A weblapon bekért adatok miért nem jelennek meg az adatbázisban (PHP)?
Jelenleg még lokálisan szerkesztem a weblapot. (a dbname-t és a tablename-t az érthetőség kedvéért cseréltem ki a rendes adatok helyett).
<a href="" class="btn" name="submit">Megrendelem</a>
ehelyett próbáld meg inputtal, pl
<input type="submit" value="Megrendelem">
hogy lásd az SQL hibát: mysqli_error($conn)
vagy is $conn változót mint parajtér meg kell adni.
Aztán ha ez meg van, barátkozz meg ezzel a karakterrel: `
és tedd a tábla és cella neveket ilyenek közé az SQL -be. (AltGr + 7)
Aztán a POST adatokat ne nyersen told be az adatbázisba. (SQL injection)
#1 jól írja. A _POST-ba ugyanis csak a form elemek kerülnek bele, az <a> pedig nem form elem, sőt, nincs is name propertyje.
De!
1. NE vegyítsd a PHP és a HTML kódot, az már 15 éve antipattern. Pláne így, hogy előbb HTML és aztán PHP. Tessék szépen templateket használni!
2. User inputot közvetlen SQL-be tenni szűrés nélkül TILOS! Nem, akkor sem lehet elnézni, ha csak gyakorolsz! Ne szokd meg a rossz gyakorlatot! Vagy használj PDO-t és prepared statement-eket, vagy legalább futtass az inputon filtert (mysqli_real_escape_string), különben bődületes SQL injection sebezhetőséged lesz!
Pár kiegészítés:
* A HTML kód non-valid (hiányzó <title>, <fieldset>; üres a <form> tag action attribútuma; a <label> elemek for attribútuma nem egyezik az azt követő <input> elemek id attribútumával), érdemes egy kicsit rendbe rakni - például így:
* Az előző hozzászólókkal egyetértve: a PHP-kódrészben a felhasználó által küldendő adatokat szűrd! Ne csak az SQL-injection miatt (mysqli_real_escape_string() függvény), hanem a felhasználó hülyesége (például telefonszámhoz csak telefonszámot, e-mailhez csak e-mailt adhasson meg - ennek ellenőrizéséhez ott vannak a reguláris kifejezések - például preg_match() függvény), vagy a robotok miatt (Captcha).
#3, csak pontosításként, az A tag -nek name property használata már nem jellemző, régi időkből maradt, anchor funkciót lát el.
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!