mehrere Datensätze aus sql Datenbank löschen
Andreas Nagel
- javascript
Hallo zusammen
auf meiner Seite sind mehrere Links markiert die gelöscht werden sollen. Und jetzt dachte ich mir das ich diese zuerst mit javascript sammle und dann an eine php Datei übergebe. Diese php Datei soll nicht dargestellt werden, so dass ich, wenn ichs denn richtig gelesen hatte, diese mit Ajax so aufrufen kann. Jedoch wie man diese Zeile dann schreibt für den Aufruf weiss ich nicht. Und wie übergebe ich denn dann überhaupt 10 id´s?
Danke gruß Andreas
Hi!
[...] mit Ajax so aufrufen kann. Jedoch wie man diese Zeile dann schreibt für den Aufruf weiss ich nicht. Und wie übergebe ich denn dann überhaupt 10 id´s?
Diese Frage(n) solltest du dir nach der Lektüre eines grundlegenden AJAX-Tutorials selbst beantworten können.
Lo!
also zu so etwas findet man Tonnen an zeug im Internet, man muss es dann nur etwas um stellen.
Aber vielleicht hilft dir ja das hier etwas weiter.
function getHttpRequest(quelle,zielfeld) {
var xmlhttp = null;
// Mozilla
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
// IE
else if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET", 'ajax/ort.pl?plz='+$(quelle).value, true);
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState != 4) {
$(zielfeld).value = 'Suche ... Bitte warten';
}
if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var daten = unescape_complete(xmlhttp.responseText).split('<br/>');
$(zielfeld).value = daten[0];
}
}
xmlhttp.send(null);
}
function unescape_complete(Ersetzen) {
Ersetzen = Ersetzen.split('+').join('%20');
return unescape(Ersetzen);
}
function $(id) {
return document.getElementById(id);
}
Bei xmlhttp.open trägst du eben deine Ziel URL ein, mit allen Parameter.
Wie du nun 10 IDs übergibt ist deine Sache.
Per Array und dann eine Schleife wäre wohl die schnellste Möglichkeit.
var daten = unescape_complete(xmlhttp.responseText).split('<br/>');
Mache ich da es bei mir eine Suche ist und die Antworten per <br/> auf der Zeilseite von einander getrennt sind. Wenn du nur 1 Datensatz als Antwort hast, brauchst du das split natürlich nicht.
Hallo
schade mir sagen die ganzen Zeilen nix. Ich vermisse eine sql Delete Abfrage, welche denn auf Grund der is´s gelöscht werden sollen.
Gruß Andreas
Hallo
und ok ich bin ein wenig weiter gekommen. Die Funktionen werden wieder gefunden denn die script Zeile mit dem Verweis auf die jquery Datei war nicht abgeschlossen. Und jetzt schreibe ich die gewollte Funktion und erhalte stets Fehlermeldungen. firefox zeigt wohl nur die Fehlermeldung aus der php Datei und hingegen der ie noch eine weitere ausgiebt:
Der für diesen Vorgang erforderlichen Daten sind noch nicht verfügbar
Und aus der php Datei erscheint die Meldung Parse Error syntaxd error, unexpected T_VARIABLE
Hier mal der Java Code aus der HTML Datei:
function DelLink()
{
var i = 0
var LinkIds = new Array()
for (i; i < frames['Daten'].document.getElementsByName("Punkt").length; i ++)
{
LinkIds[i] = frames['Daten'].document.getElementsByName("Index")[i].innerHTML
}
$.ajax({
url: "Datenbanken.php",
global: false,
type: "POST",
data: "id= " + LinkIds,
success: function(msg){alert(msg);}
}
).responseText;
}
und hier der Code aus der PHP Datei:
<?php
// Variablen
$server = "localhost";
$user = "root";
$password = "";
$verbindung=mysql_connect($server, $user, $password) or
die("Es konnte keine Datenbankverbindung hergestellt werden.");
mysql_select_db("datenbank", $verbindung) or
die("DB kann nicht ausgewählt werden.");
$Links = Array()
$Links = $_POST["id"]
for ($i = 0; $i < count($Links); $i++)
{
// Anfrage an DB-Server
mysql_query("Delete from Cache where id = $Links[$i]");
}
?>
Es ist dabei aber auch egal was ich im Java Code hinter den Punkt data schreibe. Der ie zeigt immer diese Fehlermeldung.
Vielen Dank Gruß Andreas
Hi!
Und aus der php Datei erscheint die Meldung Parse Error syntaxd error, unexpected T_VARIABLE
Dann beseitige ihn. Wenn ein Fehler in Zeile sowieso angezeigt wird, dann liegt er in der Regel davor.
Hier mal der Java Code aus der HTML Datei:
Du meinst Javascript.
$.ajax({
[...]
}
).responseText;
Was genau macht deiner Meinung nach das .responseText?
und hier der Code aus der PHP Datei:
$Links = Array()
$Links = $_POST["id"]
Wenn ich das mal hintereinander schreibe, so wie ein Parser es liest, fällt dir was auf?
$Links = Array() $Links = $_POST["id"] for ...
Und warum willst du der Variable einen Wert zuweisen, den du im nächsten Moment durch einen anderen ersetzt?
Lo!