ajtak: Funktioniert im Firefox, aber nicht im IE

Beitrag lesen

Mahlzeit,

ich poste jetzt mal den gesamten Original-Quelltext, den mir der Kollege, der das ganze verfasst hat, geschickt hat. Ich hab es natürlich angepasst, aber das Original funktioniert schon nicht.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHP-Demo</title>
<link href="styles.css" rel="stylesheet" type="text/css" />

<script type="text/javascript">
<!--
function SetValue (name,wert) {
if (document.getElementById(name)) { //wenn es das Element mit der ID gibt (dann gibt es nur 1 und es ist kein Radio-Button oder so)
if (document.getElementById(name).type == "checkbox") { // bei einer Checkbox nicht den eigentlichen Wert sondern checked setzen
if ((wert) && (wert != 0)) document.getElementById(name).checked=true //wenn wert<>0 ist --> checked auf TRUE setzen
else document.getElementById(name).checked=false;
} else if (wert) document.getElementById(name).value = wert; // sonst einfach nur den Wert setzen
} else if (document.getElementsByName(name)) { //wenn es das Element nicht als ID aber als Name gibt (z.B. bei Radio-Buttons)
//dann für alle gefundenen Elemente eine Schleife durchlaufen und den Wert setzen ...
if (wert) //aber nur, wenn es wert überhaupt gibt
for each (var radio in document.getElementsByName(name))
if (radio.value == wert)  radio.checked = true;
}
}
-->
</script>

</head>
<body>
<h1>Demo-Projekt zum Handling mit Daten in PHP - Vers.6</h1>
<p class="text_braun">Hinweise zum Projekt wieder in der<a href="readme.html"> readme.html </a>sowie im PHP-Quelltext !</p>
<form id="main_form" name="main_form" method="post" action="save.php">
  <p>hier ist der Beginn meines Formulares ...</p>
  <p>
    <input type="submit" id="btn_save" value="Speichern" />
<input type="reset" id="btn_reset" value="alle Formularwerte löschen" />
  <input type="button" id="btn_load" value="Laden eines Datensatzes" onclick="window.top.location.href='load.php';"/></p>
  <p>hier kommen verschiedene Werte/Eingabe-Felder:</p>
  Datensatz-ID: <input type="text" name="id" id="id" value="0"/> (Achtung bitte nicht verändern !) <br>
  User-ID: <input type="text" name="user_id" id="user_id" value="0"/> (Achtung bitte nicht verändern !) <br>
  <p>
    <label for="Pat_ID">Patienten-ID </label><input type="text" name="pat_id" id="pat_id" />
  </p>
  <p>
    <label for="text1">hier kommt Text1 rein</label><input type="text" name="text1" id="text1" />
</p>
  <p>
    <label for="text2">hier kommt Text2 rein</label><input type="text" name="text2" id="text2" />
</p>
  <p>und nun Optionsfelder:</p>
  <p>
    Geschlecht: <input type="radio" name="sex" id="sex_male" value="1" /><label> männlich</label> |
    <input type="radio" name="sex" id="sex_female" value="2" /><label> weiblich</label> |
    <input name="sex" type="radio" id="sex_missing" value="-1" checked="checked" /><label> weiß man nicht so genau</label>
  </p>
  <p>Schönheit (von 1-5):
    <input type="radio" name="nice" id="nice_1" value="1" /><label>1</label> | <input type="radio" name="nice" id="nice_2" value="2" /><label>2</label> |
    <input type="radio" name="nice" id="nice_3" value="3" /><label>3</label> | <input type="radio" name="nice" id="nice_4" value="4" /><label>4</label> |
    <input type="radio" name="nice" id="nice_5" value="5" /><label>5</label> | <input type="radio" name="nice" id="nice_missing" value="-1" /><label>missing</label> |
  </p>
  <p>Nun dürfen auch noch ein paar Checkboxen kommen ...</p>
  <p>
    <label for="check1">Checkbox 1</label> <input name="check1" type="checkbox" id="check1" value="1" />
    <br>
    <label for="check2">Checkbox 2</label> <input name="check2" type="checkbox" id="check2" value="1" />
    <br>
  </p>
</form>
<?php
//Anm.: nach meiner Meinung kann man PHP-Befehle auch ganz an das Ende schreiben ...
//sofern man JS verwendet; HTML-Ausgaben (z.B. zum Test) sind dann aber ganz am Ende
if ($_POST["DS_ID"]) { //wenn DS_ID übergeben wurde
     //Verbinden mit der SQL-Datenbank herstellen
if (!$sql = mysql_connect("localhost","root","")) die("kein Connect zu localhost möglich");
if (!$db = mysql_select_db("doku", $sql)) die("Datenbank doku nicht gefunden");

	$DS\_ID=$\_POST["DS\_ID"];  
	$query = "SELECT \* FROM meine\_werte where id=$DS\_ID";  
	echo "<p>so sieht mein SQL-String aus: <strong>$query</strong></p>\n";  
	$werte=mysql\_query($query);  
	if (!werte) { echo("<p><strong>Achtung ! DS\_ID wurde übergeben ... Aber die SQL-Abfrage konnte nicht durchgeführt werden !</strong></p>");  
	} else {  
		if ($row = mysql\_fetch\_array($werte, MYSQL\_ASSOC)) { //wenn es einen Datensatz gibt  
			// im folgenden werden die Werte per JS übergeben  
			// wenn die Formularobjekte genauso wie die Felder in der SQL-Tabelle heißen, kann man folg. Schleife benutzen  
			echo "<script type=\"text/javascript\">\n<!--\n"; //JS im Quellcode einleiten  
			foreach (array\_keys ($row) as $varname) {  
				$JS\_string= "SetValue(\"$varname\",\"$row[$varname]\");"; //siehe obige JS-Proz.  
				echo "$JS\_string\n";  
			}			  
			echo "-->\n</script>\n"; //JS im Quellcode ist hier zu Ende  
		} else { echo("<p><strong>Achtung ! DS\_ID wurde übergeben ... Aber es wurde kein passender Datensatz gefunden !</strong></p>");  
		}  
	} //ende if (!werte)  
 	mysql\_free\_result($werte); //bitte nach obigem mysql\_query das Ergebnis wieder freigeben !  
} // Ende if ($\_POST["DS\_ID"]) { //wenn DS\_ID übergeben wurde  

//hier ist der PHP-Quelltext zu Ende ...
?>
<p class="footer">wir sind auf der Seite index.php -- hier ist der footer ... :-)</p>
</body>
</html>

Die Kommentare von dem Kollegen sind auch enthalten.
Danke!