Avatar billede axiom Nybegynder
24. august 2004 - 21:30 Der er 4 kommentarer og
1 løsning

Fejl i on.change.submit

Hej

Jeg har et problem med en dropdown som giver en scriptfejl hvis der samtidig er en submit knap i formen.

her er koden:
<?PHP
function make_medarbejder_dropdown($name, $select, $on_change=FALSE, $active=TRUE) {
    $connection = mysql_connect("localhost","bruger","pwd")or die ("Kan ikke komme i kontakt med MySQL server.");
    mysql_select_db("database", $connection) or die ("Kan ikke finde intranet database.");

    $output = "\n<select name=\"$name\"";
          if ($on_change) $output .= " onChange=\"this.form.submit()\"";
    $output .= ">";
    $output .=  "\n<option value=\"\">Vælg</option>";

    $query = "SELECT * FROM user";
    if ($active == "TRUE") $query .= " WHERE active='yes'";
    $query .= " ORDER BY name";

    $query_result = mysql_query($query, $connection) or die ("Cannot EXECUTE SQL Query");
    while ($row =mysql_fetch_array($query_result)) {
        if ($row[id] == $select) {
            $output .= "\n<option selected value=\"$row[id]\">$row[name] $row[lastname]</option>";
        } else {
            $output .= "\n<option value=\"$row[id]\">$row[name] $row[lastname]</option>";
        }
    } //end while
    $output .= "\n</select>";
    return $output;
}

print '<TABLE>';
print '<FORM enctype="multipart/form-data" method="POST" action=' . $_SERVER[PHP_SELF] . '>';
print '<TR>';
print '    <TH>Personale</TH>';
print '    <TD>' . make_medarbejder_dropdown("cur_user_id", $_POST[cur_user_id], "TRUE", "FALSE") .'</TD>';
print '</TR>';
print '<TR>';
print '    <TH>Ret</TH>';
print '    <TD><INPUT TYPE="submit" name="submit" VALUE="ret"></TD>';
print '</TR>';
print '</FORM>';
print '</TABLE>';

?>


Hvis man i formen fjerne den sidste row, den med submit knappen, vil dropdownen godt lave en submit, hvis tabellen er som den er her, vil dropdownen ikke lave en submit.

Koden bliver afviklet på en webserver ved B-One.

Jeg har en ligende koden til at blive afviklet på en anden webserver, hvor jeg ikke har samme problem, så løsningen er måske i server opsætningen, uden at vide det.

Håber på hurtigt svat
Kim
Avatar billede googolplex Novice
24. august 2004 - 22:10 #1
Du må ikke kalde din submit knap for 'submit' :)
Avatar billede googolplex Novice
24. august 2004 - 22:11 #2
Det kan i hvert fald være derfor, jeg havde selv voldsomme problemer pga. den lille bagatel ;)
Avatar billede axiom Nybegynder
24. august 2004 - 22:14 #3
Kanon, der dur

Hvordan kan det være ?
Avatar billede googolplex Novice
24. august 2004 - 23:09 #4
Aner det ikke, men 'submit' er vel et reserveret navn i javascript :)

Men det er den type fejl man kan bøvle med i laaaang tid, fordi alt ser rigtigt ud!
Avatar billede jakoba Nybegynder
24. august 2004 - 23:21 #5
I en form er der en standardfunktion der hedder submit (den gør det muligt at sende formden fra javascript)

Hvis du laver et felt med navnet submit kan du ikke længere bruge den funktion.
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