09. november 2004 - 08:44
Der er
9 kommentarer og 1 løsning
data fra multiple input, til database
Hvordan sætter jeg dataen fra et "multiple input" felt ind i et felt i en database, og får dataen ud igen?
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
09. november 2004 - 08:45
#1
I et felt? Eller i et nyt row? Og hvad er multiple input? Du mener vel select?
09. november 2004 - 08:52
#2
min fejl, ja det er et SELECT. Det skal sættes ind i et felt i en DB
09. november 2004 - 08:59
#3
Noget i denne stil <html><head></head> <body> <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post"> <select name="selectname[]" multiple> <option value="Selectvar1">valg 1</option> <option value="Selectvar2">Valg 2</option> <option value="Selectvar3">Valg 3</option> <option value="Selectvar4">Valg 4</option> </select> <br> <input type="submit" value="Udfør"> </form> <?php if(isset($_POST["selectname"])) { echo"<p>"; $var = implode(",", $_POST["selectname"]); $sql_single = "INSERT INTO `table` (`kolonnenavn`) VALUES ('". $var ."')"; echo $sql_single; echo"<p>"; foreach($_POST["selectname"] as $value) { $sql = "INSERT INTO `table` (`kolonnenavn`) VALUES ('". $value ."')"; echo $sql ."<br>"; } } ?> </html></head>
09. november 2004 - 09:46
#4
Nu spørger jeg dumt, men hvor´dan skal jeg sætte der ind i min kode? <?php if ($_POST['skriv']){ $mail = $_POST['uname']; $addr = $_POST['addresse']; $postnr = $_POST['postnr']; $tlfnr1 = $_POST['tlfnr']; $mobilnr = $_POST['mobilnr']; $medlem_som = $_POST['medlem_som']; $om = $_POST['om']; mysql_query("UPDATE medlemsliste SET addresse='$addr', om='$om', postnr='$postnr', tlfnr='$tlfnr1', mobilnr='$mobilnr', leder_for='$klasse1', medlem_som='$medlem_som' WHERE email LIKE '$mail'"); } ?> <form method=post action=<? $PHP_SELF; ?>> <input TYPE=hidden NAME=skriv VALUE=1> <? $foresp1 = mysql_query("SELECT * FROM authuser INNER JOIN medlemsliste ON authuser.uname=medlemsliste.email WHERE uname='$uname'"); while ($data = mysql_fetch_array($foresp1)) { echo "Brugernavn / Email<input type=text name=uname value=$data[uname] readonly><br>"; echo "Navn:<input type=text name=navn VALUE='$data[navn]'><br>"; echo "Addresse:<input type=text name=addresse value='$data[addresse]'><br>"; echo "Post nr. / By<input type=text name=postnr value='$data[postnr]'><br>"; echo "Telefon nr.<input type=text name=tlfnr value=$data[tlfnr]><br>"; echo "Mobil nr.<input type=text name=mobilnr value=$data[mobilnr]><br>"; echo "Leder for<input type=text name=leder_for value='$data[leder_for]'><br>"; echo "Medlem som<input type=text name=medlem_som value=$data[medlem_som]><br>"; echo "Om:<textarea rows=6 cols=50 name=om>$data[om]</textarea><br>"; $ledfor = $data[leder_for]; } echo "klasse:<select name='klasse[]' size='9' multiple>"; $leder = mysql_query("select klasse from klasser"); while($row = mysql_fetch_array($leder)){ if ($row["klasse"] == "$ledfor") { $sel = 'SELECTED';} else { $sel = ""; } echo "<option value='$row[klasse]' $sel>$row[klasse]</option>"; } echo "</select>"; ?> <input type=submit VALUE="Opdater"> </form>
09. november 2004 - 09:56
#5
Det er vel feltet "leder_for" du vil ha' opdateret? if ($_POST['skriv']){ $mail = $_POST['uname']; $addr = $_POST['addresse']; $postnr = $_POST['postnr']; $tlfnr1 = $_POST['tlfnr']; $mobilnr = $_POST['mobilnr']; $medlem_som = $_POST['medlem_som']; $om = $_POST['om']; $klasser = implode(",", $_POST["klasse"]); mysql_query("UPDATE medlemsliste SET addresse='$addr', om='$om', postnr='$postnr', tlfnr='$tlfnr1', mobilnr='$mobilnr', leder_for='$klasser', medlem_som='$medlem_som' WHERE email LIKE '$mail'"); } Så får du hver klasse adskilt af et komma For at vise det igen $ledfor = explode(",", $data["leder_for"]); .......................... if (in_array($row["klasse"], $ledfor)) { $sel = 'SELECTED';} else { $sel = ""; } Tror jeg da! :O) Er ikke testet jo!
09. november 2004 - 10:36
#6
Det ser ud somom det virker, undtagen if (in_array($row["klasse"], $ledfor)) { $sel = 'SELECTED';} else { $sel = ""; } Har du et andet forslag?
09. november 2004 - 16:04
#7
hmm, nej ikke lige umiddelbart Men du kan jo prøve at outputte $ledfor inden, for at se hvilke som findes i array'et
08. marts 2005 - 09:14
#8
vil du svare?
08. marts 2005 - 09:19
#9
Fik du det til at virke?
08. marts 2005 - 10:29
#10
Ja det virker perfekt
Vi tilbyder markedets bedste kurser inden for webudvikling