Hogy tudnám azt megcsinálni, hogy csak akkor ne engedje, ha mind a két feltétel igaz?
Sziasztok! Belekezdtem egy úgynevezett Fantasy Football oldal készítésébe a saját tudásommal. Sikerült elkészíteni a játékosvételt, azt, hogy csak egy embernek 11 játékost hagyjon csak venni, eljutottam odáig, hogy megszeretném azt csinálni, hogy egy ember egy játékost csak egyszer tudjon megvenni. Én egy ilyen kódra gondoltam, de valamiért nem működik. Egy játékost hagy venni, de utána többet már nem, gondolom azért, mert már egyszer szerepel az a név. Itt a kód ezen része:
mysql_connect ("$host", "$felhasznalonev", "$jelszo") or die ("Valami baj van");
mysql_select_db("$adatbazis") or die ("Nem sikerült csatlakozni az adatbázishoz");
$sql=mysql_query("Select*from spany where felhnev='$felhnev'");
$eredmenyk=mysql_fetch_array($sql);
if ($eredmenyk ["jatnev"] != "$csapatok")
{
Switch($switch)
{
case 1;
$sql = "INSERT INTO $tabla VALUES ('$felhnev','$csapatok', '$csapate', '$pont')";
break;
}
}
Else
{
header("location:index.php");
}
Ez így működhetne vagy rossz irányba kutatok. Várom a válaszokat és aki tudja, hogy, hogyan kell, pls írja le... :)
Egyszerű:
Fogod a nevét annak, akit meg akarsz vásárolni, és összehasonlítod a már meglévőkkel. Ha nincs egyezés, jó vagy.
Lehet hogy nem értelek. Csak felhasználónként ne legyen egyezés? Mert akkor simán az, amit mondtam. Hogy ha egy ilyen egyszerű feladatot nem tudsz megoldani, magadra vess.
Ja és már mysqli -t érdemes használni.
Egy egyszerű példával:
A te neved mondjuk Sanyika. Sanyika megveszi mondjuk Messit, akkor ő már többször nem veheti meg Messit,mert már egyszer van neki olyan.
Az én nevem Jenőke. Hiába te már megvetted Messit, egyszer én is megvehetem és akkor többször én sem, mert nekem is van már olyan, és így tovább.
Amúgy a MySQLI Miben különbözik a sima MySql-től. Egy oktató oldalt tudnál dobbni?
Értem! Akkor a módszerem működik. Tehát:
Készítünk egy bool változót, a neve: van. Alapból az értéke hamis.
Végigmegyünk a játékoslistán (nem tudom hogy tárolod).
Minden egyes meglévő játékosodat összehasonlítunk a megvenni kívánt játékossal. Ha egyezés történik, akkor
a van igaz lesz, és kilépünk a ciklusból. Utána megnézzük a van értékét. Ha igaz, akkor nem történik meg a vásárlás. Ha hamis, akkor meg igen.
Tehát például így:
$van = false;
foreach ($jatekosaim as &$jatekos) {
if ($jatekos == $vasarolni_kivant) {
$van = true;
}
}
if ($van) {
echo("Őt már megvetted");
} else {
megvesz();
}
A mysqli-ről csak annyit, hogy az összes mysql utasításodat mysqli-re kell cserélned. (Ld. bővebben: php doksi)
Most így néz ki a kód: Lehet, hogy hülyeséget csináltam, nézd el nekem. Még csak most tanulgatom, és hát gondoltam, hogy megpróbálkozom egy ilyennel...
$parancs="Select*from spany";
$eredmenyk=mysql_query($parancs);
$van = false;
foreach ($eredmenyk as &$jatekos) {
if ($jatekos == $csapatok) {
$van = true;
}
}
if ($van) {
Header("Location: index.php");
Exit();
}
else
{
Switch($switch)
{
case 1;
$sql = "INSERT INTO $tabla VALUES ('$felhnev','$csapatok', '$csapate', '$pont')";
break;
}
}
De így sem akar működni...
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!