Kezdőoldal » Számítástechnika » Programozás » Hogy tudnám azt megcsinálni,...

Hogy tudnám azt megcsinálni, hogy csak akkor ne engedje, ha mind a két feltétel igaz?

Figyelt kérdés

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... :)



2014. aug. 2. 21:34
 1/9 anonim ***** válasza:

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.

2014. aug. 2. 21:55
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:
Illetve kérnék egy jó oldalt, ahol alaposabban leírja az SQL parancsokat és azt, hogy mikor kell és hogyan használni őket...
2014. aug. 2. 21:56
 3/9 A kérdező kommentje:
És mi van akkor, ha mondjuk van öt felhasználó. Akkor nem működik a sima összehasonlítás, mert ha már egy megvette, akkor a többi nem tudja. Illetve légszí kóddal...
2014. aug. 2. 21:57
 4/9 anonim ***** válasza:

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.

2014. aug. 2. 22:32
Hasznos számodra ez a válasz?
 5/9 A kérdező kommentje:

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?

2014. aug. 2. 22:39
 6/9 anonim ***** válasza:

É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)

2014. aug. 3. 11:24
Hasznos számodra ez a válasz?
 7/9 A kérdező kommentje:

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...

2014. aug. 3. 12:09
 8/9 anonim ***** válasza:
Szívesen segítek, vegyél föl skypen (írom a nevem pü-ben). Este 6 után keress föl, fent leszek.
2014. aug. 3. 15:34
Hasznos számodra ez a válasz?
 9/9 A kérdező kommentje:
Köszi! :)
2014. aug. 3. 15:57

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!