22. februar 2006 - 17:29
Der er
7 kommentarer og 1 løsning
En form til en while
Hej :) Ja så er jeg her igen... Og igen har jeg lidt af et problem... Jeg har følgende kode: echo "<form action=\"\" method=\"post\">"; $query = mysql_query("SELECT * FROM varer ORDER BY id",$db); while($bestil = mysql_fetch_assoc($query)) { echo " <input type=\"hidden\" name=\"id\" value=\"".$bestil['id']."\"> <input type=\"hidden\" name=\"pris\" value=\"".$bestil['pris']."\"> <input type=\"hidden\" name=\"navn\" value=\"".$bestil['navn']."\"> <table class=\"text1\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\" width=\"500\" border=\"1\"> <tr> <td width=\"200\">".$bestil['navn']."</td> <td width=\"100\">".$bestil['pris']." kr/stk.</td> <td width=\"100\"><input type=\"tekst\" name=\"antal\" class=\"formText\" size=\"3\" value=\"".$bestil['samlet_antal']."\"> stk.</td> </tr> </table>"; } echo "<input type=\"submit\" name=\"bestil\" value=\"Fortsæt bestilling\" class=\"formButton\"> </form>"; Lad os sige at while() udskriver 10 poster.. Er der så ikke en måde hvorpå, at jeg kan udfylde data i hver af de 10 <input type=\"tekst\">, og så opdatere alle 10 på én gang med én knap? Mvh Anders
Annonceindlæg fra Deloitte
22. februar 2006 - 17:44
#1
Hvis du sørger for at nummerere dine input, så er det vel ik noget problem? Bare de ikke har samme navn. Desuden er der ikke en input type som hedder tekst.
22. februar 2006 - 17:49
#2
<input type=\"tekst\"> har aldrig givet problemer hos mig... Den viser det helt som den skal.. Anden sag :) Det med at nummmerere mine inputs, det er jo der problemet opstår, fordi jeg henter jo flere forskellige med samme while().. Men i teorien, ville følgende så ikke virke: while($bestil = osv.....) { echo " <input type=\"tekst\" name=\"".$bestil['navn']."\">"; } og så når man trykker submit, så: if(isset($_post['submit'])) { while($bestil = osv samme query som før) { mysql_query("INSERT INTO tabel (navn) VALUES ('".$bestil['navn']."')",$db); } } Ville det ikke virke? :P
22. februar 2006 - 17:57
#3
Det hedder: <input type="text"> Grunden til den virker hos dig alligevel, er at tekst ikke er en accepteret type, hvorefter den så bare tager standardtypen text :) Ja, så vidt jeg kan gennemskue, så holder din teori :)
22. februar 2006 - 17:59
#4
Okay (til begge dele...) Jeg tester lige, og så vender jeg tilbage :)
22. februar 2006 - 18:17
#5
Når man har det her $query = mysql_query("SELECT * FROM varer ORDER BY id",$db); while($bestil = mysql_fetch_assoc($query)) { <input type=\"hidden\" name=\"id"."_".$bestil['navn']."\"> } kan man så ikke kalde den igen med $queryb = mysql_query("SELECT * FROM varer ORDER BY id",$db); while($b = mysql_fetch_assoc($queryb)) { echo $_POST['id_$b[\'navn\']']; } Kan nemlig ikke finde ud af at få fat på den variabel igen... Og uden det kan jeg ikke rigtig kommer videre :P
22. februar 2006 - 19:24
#6
Det virker det jeg har lavet.. Man kører bare $_POST['id_'.$b['navn'].''] så kan den godt forstå det :) Men klart point til dig for hjælpen (hvis du smider et svar :P) ;) Jeg takker for hjælpen... Mvh Anders
10. marts 2006 - 18:56
#7
Lukker nu...!
10. marts 2006 - 19:43
#8
Beklager - havde ikke set at du ville have et svar :(
Vi tilbyder markedets bedste kurser inden for webudvikling