Kezdőoldal » Számítástechnika » Weblapkészítés » Mi a hiba ezzel az iffel?

Mi a hiba ezzel az iffel?

Figyelt kérdés

if($jelszo==$pw_ujra)

$res=mysql_query("UPDATE felhasznalok SET KERESZTN='$knev', VEZETEKN='$vnev' WHERE id LIKE '$profileid'");

echo "Sikeres módosítás!";

else echo "A jelenlegi, és megadott jelszavak nem egyeznek!<br><a href='profile.php?mit=reszletek'>Vissza a profilomhoz</a>";

}



2013. ápr. 16. 19:34
 1/8 A kérdező kommentje:
Ha a $res után nem írom ki azt az echo-t akkor gyönyörűen lefut, viszont, ha így nem engedi, akkor hogy írjam ki, hogy sikeres a módosítás?
2013. ápr. 16. 19:35
 2/8 anonim ***** válasza:

if($jelszo==$pw_ujra)

{

$res=mysql_query("UPDATE felhasznalok SET KERESZTN='$knev', VEZETEKN='$vnev' WHERE id LIKE '$profileid'");

}

echo "Sikeres módosítás!";


Így. Az if utáni blokkot bele kell tenni {} jelek közé.

2013. ápr. 16. 19:36
Hasznos számodra ez a válasz?
 3/8 anonim ***** válasza:

if($jelszo==$pw_ujra) {

$res=mysql_query("UPDATE felhasznalok SET KERESZTN='$knev', VEZETEKN='$vnev' WHERE id=$profileid");

echo "Sikeres módosítás!";

}

else {

echo "A jelenlegi, és megadott jelszavak nem egyeznek!<br><a href='profile.php?mit=reszletek'>Vissza a profilomhoz</a>";

}

2013. ápr. 16. 20:03
Hasznos számodra ez a válasz?
 4/8 PHP de kóder! ***** válasza:

"Az if utáni blokkot bele kell tenni {} jelek közé."


nem kell betenni, csak ha a feltetel magja tobb sorbol all, mint ahogy a peldaban lathattuk

2013. ápr. 16. 20:35
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:

"nem kell betenni, csak ha a feltetel magja tobb sorbol all, mint ahogy a peldaban lathattuk"


Éppen attól lesz blokk, hogy több utasításnak kell a feltétel esetén végrehajtódnia.

2013. ápr. 16. 20:42
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:

Szerintem ez is if blokk:

if ('kutya' == 'macska')

--die('critical error');


de ezen nem veszünk össze :)

2013. ápr. 16. 21:29
Hasznos számodra ez a válasz?
 7/8 PHP de kóder! ***** válasza:
ha egy sort irsz utana, az is blokk :)
2013. ápr. 17. 08:30
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:

Na jó, tisztázzuk.

Ha az if után nincs blokk, akkor az utána következő utasításra vonatkozik a feltétel. Ha van utána blokk, akkor a blokkon belüli utasításokat futtatja. A kérdésben található kód "Unexcepted else" vagy hasonló hibát dob egy szintaxisellenőrzés során. #2 és #3 kódja teljesen jól működik, és megoldja ezt a problémát. ENNYI, ?>, </html>, vagy ami tetszik.

Hogy utána miért kell összeveszni ezen, azt nem értem. A blokk attól blokk, hogy {} jelek fogják közre, és kifelé egy utasításként funkcionál, ez magyarázza a működését. #6 kódja egy teljesen jó if utasítás, de nem tartalmaz blokkot. Ha egy sort írsz utána, az utasítás. Ha egy egy sort tartalmazó blokkot (pl. {die('error');}) írsz utána, az már blokk, csak nincs értelme. (Megjegyzem, én ezt mindig kiteszem, csak hogy átlássam a kódot.) Tehát nincs itt hiba, és ha felesleges is volt ezt ideírnom, azért arra legalább jó, hogy több kérdést és félreértést ne szüljön a dolog.

2013. jún. 8. 15:36
Hasznos számodra ez a válasz?

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!