Avatar billede theboy Nybegynder
28. april 2003 - 09:49 Der er 2 kommentarer og
1 løsning

Sende indholdet af en boks <select>

Jeg har følgende kode:
------------------------------
<html>
<head>
<title>Funktion med formularbokse</title>
</head>
<body>

<script type="text/javascript">

function deleteOption(object,index) {
    object.options[index] = null;
}

function addOption(object,text,value) {
    var defaultSelected = true;
    var selected = true;
    var optionName = new Option(text, value, defaultSelected, selected)
    object.options[object.length] = optionName;
}

function copySelected(fromObject,toObject) {
    for (var i=0, l=fromObject.options.length;i<l;i++) {
        if (fromObject.options[i].selected)
            addOption(toObject,fromObject.options[i].text,fromObject.options[i].value);
    }
    for (var i=fromObject.options.length-1;i>-1;i--) {
        if (fromObject.options[i].selected)
            deleteOption(fromObject,i);
    }
}

function SelectAll(fromObject) {
    for (var i=0, l=fromObject.options.length;i<l;i++) {
        fromObject.options[i].text,fromObject.options[i].selected = true;
    }
}

</script>
<form method="post" action="formularbokssent.php">
<table>
<tr>
<td width="259" height="197" valign="top"><strong>Modtagere</strong><br>
<select multiple name="select1" size='8' style="width:200px">

</select>
</td>
<td width="225" valign="top"><strong>Elever</strong><br>
  <select multiple name="select2" size='8' style="width:200px">
    <?
include("db_ind.inc");
$result = mysql_query("select * from elev order by fornavn");
while ($row = mysql_fetch_array($result)) {
$fornavn = $row["fornavn"];
$efternavn = $row["efternavn"];
$brugernavn = $row["navn"];

echo "<option value='$brugernavn'>$fornavn $efternavn</option>";

}
?>

  </select>
  <br><input name="button2" type='button' style="width:70px;" onclick="copySelected(this.form.select2,this.form.select1)" value='< Tilføj' />
 
  <input name="button2" type='button' style="width:70px;" onclick="copySelected(this.form.select1,this.form.select3)" value='Fjern  >' /></td>
<td width="304" valign="top"><strong>Forældre</strong><br>
<select multiple name="select3"  size='8' style="width:300px">
  <?
include("db_ind.inc");
$result = mysql_query("select * from foraeldre order by fornavn1");
while ($row = mysql_fetch_array($result)) {
$fornavn1 = $row["fornavn1"];
$fornavn2 = $row["fornavn2"];
$brugernavn = $row["navn"];

echo "<option value='$brugernavn'>$fornavn1 og $fornavn2</option>";
}
?>
</select>
<br><input name="button4" type='button' style="width:70px;"
  onclick="copySelected(this.form.select3,this.form.select1)" value='< Tilføj' />
<input name="button3" type='button' style="width:70px;"
  onclick="copySelected(this.form.select1,this.form.select3)" value='Fjern  >' /></td>
</tr>
</table>
<p><input type="button" value="Send data" onClick="SelectAll(this.form.select1);submit()">
</form>

</body>
</html>
-----------------------------

Og min "formularbokssent.php":
--------------------
<?
$helst = $_REQUEST["select1"];
echo "$helst";
?>
<?

$all = $_REQUEST["select1"];

$stoerrelse = sizeof($all);

for ($i = 0; $i < $stoerrelse; $i++) {

$tekst = "$all[$i], ";
echo "Navn: $tekst<br>";

}
?>
-------------------------
Som det er lige nu, blive kun 1 af værdierne sendt over. Jeg har også prøvet med at lave det om med til <select1[]>, men så kan jeg ikke få java scriptet til at fungere.

Det skulle jo gerne være så at man kan tilføjge elementer til <select1> og så uafhængig af om felterne i <select1> er markeret eller ej, så bliver de alle sendt til "formularbokssent.php".
En anden ting er også at det kunne være rart hvis java scriptet ikke fjerne dem fra <select2> og <select3>, men bare kopierede dem.
Avatar billede sostack Nybegynder
29. april 2003 - 09:58 #1
prøv med:
$all = $_POST["select1"];
istedet for:
$all = $_REQUEST["select1"];

//sostack
Avatar billede theboy Nybegynder
29. april 2003 - 11:55 #2
Det virker heller ikke!! :-(
Jeg har brugt eksemplet fra:
http://html.dk/scripts/javascript/00006/
som vises på:
http://html.dk/scripts/javascript/00006/eksempel.asp
Der sendes det bare til et ASP dokument og de kan godt få det til at fungere på en eller anden måde. Jeg skal bare bruge det til PHP
Avatar billede theboy Nybegynder
25. august 2005 - 14:42 #3
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester