ugrás a tartalomhoz

<input name vs id />

szotsaki · 2007. Jan. 13. (Szo), 14.30
Sziasztok!

PHP-ben kódolom kis regisztrációs űrlapomat, és feltűnt, hogy nem fogadja el az input mezők értékét, ha a mező neve nincs beállítva, de az id-je igen.

Tehát, erre a kódra kiírja, hogy a $_POST tömb nem tartalmaz "value" értéket.
  1. <?php  
  2. if (isset($_POST['submit'])){  
  3.     echo $_POST['value'];  
  4. else {  
  5.     echo "<form method='post' action='$_SERVER[PHP_SELF]'>  
  6.     <input type='text' id='value' />  
  7.     <input type='submit' name='submit' />  
  8. </form>";  
  9. }  
  10. ?>  
Ha az inputnak nemcsak az id-hez adom meg a "value"-t, hanem name-hez is, akkor minden további nélkül működik.

A kérdésem az, hogy ez egy feature vagy bug a php-ban, és hogy lehet-e valamit ellene tenni.
 
1

ez teljesen normális

Sulik Szabolcs · 2007. Jan. 13. (Szo), 14.48
Semmi köze a php-hez. Ez html, és nem feature, hanem normál működés.
Az id arra való, hogy pl. javascripttel / css azonosíthasd az oldalon. A name attributumban megadott névvel kerül feldolgozára, tehát azzal a névvel tudsz majd hivatkozni rá szerver oldalon. Bővebben

UI.:
lehet-e valamit ellene tenni
Tanulni, tanulni, tanulni...

UI2.: ha már mindenképpen $_SERVER[PHP_SELF] formulát használod, legalább használd szabályosan: $_SERVER["PHP_SELF"]
Egészen pontosan: <form method='post' action='".$_SERVER["PHP_SELF"]."'>
2

Köszönöm

szotsaki · 2007. Jan. 13. (Szo), 15.08
Köszönöm a választ!

Ui.: A $_SERVER tömbnél azért nem írtam ki újra az idézőjelet, mert már az echo miatt amúgy is stringben volt.