Ezt hogyan oldják meg a PHP-sek?
Van egy form, amiből néhány értéket át kellene vinni a feldolgozóba, ugye így:
<input type="hidden" name="valtozo_neve" value="Jóska Pista">
Nade, ha az user elkezdi szerkesztgetni ezt, az adatbázist tönkre teszi. Hogyan kell ezt kivédeni? Ajax-el ugyan ez a bajom.
A kifejezés amit keresel, az a szerver oldali validáció.
Csak olyan adatot engedünk be az adatbázisba, amit előtte szerveroldalon validáltunk.
if(isset($_POST["valtozo_neve"]) and $_POST["valtozo_neve"]=="Jóska Pista"){
...
}
"Úgyhogy, hogy szerveroldalon SEMMILYEN inputot nem fogadunk el" akkor egy regisztráció hogyan néz ki?
Vagy most hasra ürök és azt mondom ncore-on hogyan küldenek be törrentet, hogy azt szerkesztgetve, ne olyan kategóriába kerüljön hogy "énmostjólátba$ztamarendszerthahahahaha"? 3. az oké, de attól az user szerkesztheti.
problémám hogy egy változót kellene átvinni formmal együtt, de ugye ha user szerkesztgeti akkor sok értelme nincs.
Pont azért van a " $_POST["valtozo_neve"]=="Jóska Pista" ".
Máskülönben meg megszünteted a kérést...
Két opció van, attól függően, milyen titkos dolgot kell átvinned adatként.
1: nem olyan titkos, csak ne piszkálja: ekkor fogod a feldolgozásnál, és megnézed az értékét: azaz nem átadod db-nek, hanem escape-eled, ha csak számot fogad el, akkor intté konvertálod (és ha nem azt ad a user, ettől összeomlik), ellenőrzöd például regex-szel hogy csak betű és/vagy szám van-e benne spec.karakterek nélkül...
2: ha nem akarod hogy látható legyen, de hozzá akarod kötni az adott böngésző emberkéhez, akkor szerveroldalon egy külön táblában eltárolod, és eltárolsz hozzá egy hash-t például, és azt a hash-t küldöd le, és feldogozásnál a hash alapján kikeresed a táblában. (ekkor érdemes időt is menteni hozzá és törölni ami már régi)
(PHP-zsenik...: tudom, nem olyan szép megoldások, hogy mindenki tetszését elnyerje, de a probléma mélyebb ismerete nélkül nekem C beágyazott fejlesztőként erre futotta)
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!