Dynamische Erweiterung in einem Formular

Hi nochmal,

also ich habe das nach deinem vorschlag verändert, trotzdem scheint es (wieder mal) nicht zu klappen! :( Vielleicht kannst du mir da wieder weiterhelfen, ich seh echt nicht, wo ich wieder ein Fehler gemacht habe!
Vielen, vielen lieben Dank nochmal!

Liebe Grüße
Christina

Code:
<html>
<script language="JavaScript" type="text/javascript">
function filldrop2(selectname, selectname2){
        document.form.elements[selectname2].options.length = 0;
        document.form.elements[selectname2].options[0] = new Option('Bitte wählen','0');
        document.form.elements[selectname2].selectedIndex = 0;
        <?php
         $db = @mysql_connect("localhost","root","") or die(mysql_error());
         @mysql_select_db("eOWC",$db) or die(mysql_error());

         $res = mysql_query("select * from projekte order by pName");
         $anz = mysql_num_rows($res);
         $y = 1;
         while ($y<=$anz){
         $daten = mysql_fetch_array($res,MYSQL_ASSOC);
         $res2 = mysql_query("SELECT * FROM taetigkeiten WHERE idProjekte='$daten[idProjekte]'");
         $anz2 = mysql_num_rows($res2);
         $z = 1;
             while ($z<=$anz2) {
                 $daten2 = mysql_fetch_array($res2,MYSQL_ASSOC);
                 echo "if (document.form.elements[selectname].value==".$daten['idProjekte'].")
                    {document.form.elements[selectname2].options[".$z."] = new Option('".$daten2['TName']."','".$daten2['idTaetigkeiten']."');}";
                 $z++;
                 }
         $y++;
         }
            ?>
}
</script>
<head></head>

<body>
<form name="form" id="form" action="db.php" method="post" onreset="document.form.reset()">

<div id="pName"><br>
<select size=1  style="width:120px;" width=120 name="select" id="select" onChange="filldrop2(select,select2);">

<option value="0">Bitte auswählen</option>
<?php
$db = @new mysqli('localhost', 'root', '', 'eOWC');
if (mysqli_connect_errno()) {
    die ('Konnte keine Verbindung zur Datenbank aufbauen: '.mysqli_connect_error().'('.mysqli_connect_errno().')');
}
$sql = 'SELECT Pname,idProjekte FROM projekte';
$result = $db->query($sql);
if (!$result) {die ('Etwas stimmte mit dem Query nicht: '.$db->error);}
while ($row = $result->fetch_assoc()) {
    echo '<option value="'.$row['idProjekte'].'">'.$row['Pname']."\n";
}
?>
</select>
</div>

<div id="tName"><br><select name="select2" id="select2" style="width:120px;" width=120></select></div>
</form>
</body>
<html>
 
Zuletzt bearbeitet:
Hi,

die IDs müssen als Strings übergeben werden. Setze daher die Paremeter im Funktionsaufruf in einfache Anführungszeichen.
Code:
onChange="filldrop2('select', 'select2');"

Ciao
Quaese
 
Zurück