Miért ír az alábbi PHP kódomra hibát?
Sziasztok! Kezdő vagyok a PHP nyelvben. Az alábbi kódomra:
<?php
if(isset($_POST["nev"]) && ($_POST["kuldes"]) && ($_POST["hozzaszolas"]))
{
print 'Beküldő: '.$_POST["nev"].'<br />';
print $_POST["hozzaszolas"];
}
elseif
{
print '<br />Nem töltötted ki a mezőket!';
}
else
{
print 'Nincs új tartalom!';
}
?>
Ezt a hibaüzenetet írja: Parse error: syntax error, unexpected '{', expecting '(' in C:\wampmappa\www\sajatsablonv10\index.php on line 44
index.php 44. soráig tudott eljutni a parser. Ott neki kapcsos zárójel hiánya tűnt fel.
Az a kódrészlet, amit beírtál, csak 16 soros.
BIZTOS, hogy jó forráskódot nézel a hiba javításához?
if(isset($_POST["nev"]) && ($_POST["kuldes"]) && ($_POST["hozzaszolas"]))
Ennek sincs sok értelme:
isset post[név] oké, aztán a többivel mi van? elötte true / false -ra állítod az értéküket? Különben nem hinném, hogy így akartad odaírni őket.
#viperM
na igen, valószínűleg lehagyta az isset funkciót az ellenőrzésnél, ugyanakkor így is jó a kód, hiszen csak akkor dob a feltételre false-ot, ha bármelyik false. Normál érték esetén teljesül a kód.
A nagyobb gond az, hogy ezek a változók posztolás esetén mindenképpen létezni fognak, legfeljebb az értékük lesz null. Ezért inkább azt kéne vizsgálni, hogy nem üresek-e a változók. Pl:
if(isset($_POST["nev"]) && $_POST["nev"] != "" && isset($_POST["hozzaszolas"]) && $_POST["hozzaszolas"] != "") {
Egyébként a kódban még nagyon sok hiányosság van, így simán átadhatók ártalmas kódok is. Szóval sok dolgod van még :)
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!