Hi.
Problem ist vermutlich trivial, aber irgendwie komme ich nicht weiter. Ich habe ein simples Beispiel zum darstellen von Daten aus einer Datenbank. Klicke ich auf den entsprechenden Namen, wird mir ein XML Dokument zurückgegeben und die zugehörigen Werte angezeigt - alles super.
Jetzt würde ich gerne Datensätze auch löschen dazu (siehe Quellcodeausschnitt weiter unten). Löschen klappt auch soweit, jedoch wird die entsprechende Tabellenzeile nicht gelöscht! Der Befehl an sich funktioniert. In Kombination mit besagtem Quellcode, funktioniert er nicht mehr. Debug Möglichkeiten? Vielleicht könnt ihr mir einen Tip geben, danke.
mfg streuner
Problem ist vermutlich trivial, aber irgendwie komme ich nicht weiter. Ich habe ein simples Beispiel zum darstellen von Daten aus einer Datenbank. Klicke ich auf den entsprechenden Namen, wird mir ein XML Dokument zurückgegeben und die zugehörigen Werte angezeigt - alles super.
Jetzt würde ich gerne Datensätze auch löschen dazu (siehe Quellcodeausschnitt weiter unten). Löschen klappt auch soweit, jedoch wird die entsprechende Tabellenzeile nicht gelöscht! Der Befehl an sich funktioniert. In Kombination mit besagtem Quellcode, funktioniert er nicht mehr. Debug Möglichkeiten? Vielleicht könnt ihr mir einen Tip geben, danke.
PHP-Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>AJAX Test</title>
<script type="text/javascript">
<!--
var request = false;
function setDelete(id,pointer){
if (window.XMLHttpRequest)
{
request = new XMLHttpRequest(); //Mozilla, Chrome, Safari
}
else if (window.ActiveXObject)
{
try {
request = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
} catch (e){
try {
request = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
} catch (e) {}
}
}
if (!request){
alert("Es konnte keine Instanz erzeugt werden!");
return false;
}
else
{
var url = "delete.php";
var value = document.getElementById('id_'+id).innerHTML;
request.open('post', url, true);
request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
request.send('id='+value);
request.onreadystatechange = interpretDelete(pointer);
}
}
function interpretDelete(pointer) {
switch (request.readyState) {
case 4:
if (request.status != 200) {
alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+request.status);
} else {
var content = request.responseText;
document.getElementById('content').innerHTML = content;
document.getElementById('myT').deleteRow(pointer); // deleteRow wird nicht ausgeführt
}
break;
default:
break;
}
}
//-->
</script>
</head>
<body>
<?php
//...
$sql = mysql_query("SELECT * FROM mitglieder");
$pointer = 0;
echo "<table id=\"myT\">";
While ($row = mysql_fetch_array($sql)){
echo "<tr><td><a id=\"source_".$row["id"]."\" href=\"javascript:setRequest('".$row["id"]."')\">".$row["name"]."</a></td>";
echo "<td><a id=\"id_".$row["id"]."\" href=\"javascript:setDelete('".$row["id"]."','".$pointer."')\">".$row["id"]."</a></td></tr>";
$pointer++;
}
echo "</table>";
?>
<br />
<span id="content"></span>
<br />
<table>
<tr>
<td>Name</td><td>:</td><td><span id="name"> - Eintrag wählen - </span></td>
</tr>
<tr>
<td>Ort</td><td>:</td><td><span id="ort"> - Eintrag wählen - </span></td>
</tr>
<tr>
<td>Telefon</td><td>:</td><td><span id="telefon"> - Eintrag wählen - </span></td>
</tr>
</table>
</body>
</html>
Kommentar