Serverseitig SQL-Abfragen mit aufruf von webseite
MiSo
- sonstiges
0 Cheatah0 MiSo0 Kai0 MiSo0 Kai0 Wilhelm Turtschan0 Klaus Mock0 Cheatah
0 Rouven
0 Wilhelm Turtschan
Sorry, ich wusste nicht so genau, wie ich das Thema bezeichnen soll. Mir gehts darum, dass der Benutzer der webseite irgendwas anklicken kann, sagen wir nen Link und anschließend unsichtbar für den Benutzer eine SQL-Abfrage ausgeführt wird.
Üblicherwerweise macht mans ja mit Seite neu laden & PHP aber das kanns ja nicht sein, oder?
Klärt mich mal auf, ich hab da keine Ahnung von.
mfg
Micha
Hi,
Üblicherwerweise macht mans ja mit Seite neu laden & PHP
diese Behauptung ist absolut falsch. Üblicherweise macht man das mit den Anfordern einer _neuen_ Seite und einer serverseitigen Technik - egal welcher.
aber das kanns ja nicht sein, oder?
Natürlich kann es das sein, warum denn nicht? Wenn Du Dir die neue Seite sparen möchtest, kannst Du es ggf. mit AJAX versuchen.
Cheatah
Ich dachte bereits erwähnt zu haben, dass ich davon nicht den blassesten schimmer habe; es wäre also nett von dir dich etwas genauer auszudrücken. Was gibts da für Geschichten neben Ajax? Wie greift man mit Ajax überhaupt auf MySQL zu? Üblicherweise mach ichs mit PHP; Ajax ruft afaik in X(HT)ML Dokumenten funktionen auf; gehts auch mit funktionen in PHP docs aufrufen?
Links wären auch hilfreich.
mfg
Micha
Hallo,
was spricht dagegen die gleiche Seite mit dem Link nochmal aufzurufen und mit dem Link einen GET Parameter zu übergeben und wenn dann dies der Fall ist deine SQL Abfrage zu starten.
Gruß Jan
was spricht dagegen die gleiche Seite mit dem Link nochmal
aufzurufen und mit dem Link einen GET Parameter zu übergeben?
Die Tatsache, dass die Seite neu geladen werden muss. Schon mal probiert bei ner riesigen Kundendatenbank ein Paar Tabellen zu zeichnen? Der Seitenaufbau geht bis zu 10 Sekunden. Wenn die geschichte dann jedes mal neu geladen wird wenn du sagen wir nen Kunden löschen willst hat man seinen Spass...
mfg
Micha
Die Tatsache, dass die Seite neu geladen werden muss. Schon mal probiert bei ner riesigen Kundendatenbank ein Paar Tabellen zu zeichnen?
Diese Tatsache konnte mir aber nicht bekannt sein, da sie aus deinem ertsen Posting nicht hervorging!
Vielleicht solltest du deine Frage mal präzisieren!
Kai
habe d'ehre MiSo
Die Tatsache, dass die Seite neu geladen werden muss. Schon mal probiert bei ner riesigen Kundendatenbank ein Paar Tabellen zu zeichnen? Der Seitenaufbau geht bis zu 10 Sekunden. Wenn die geschichte dann jedes mal neu geladen wird wenn du sagen wir nen Kunden löschen willst hat man seinen Spass...
Klar, wenn man nach loeschen eines Datensatzes wieder die riesige Kundendatenbank neu durchnudelt wuerde ich mir an Deiner Stelle einen anderen Ansatz fuer Deine Applikation ueberlegen.
Welche Ausmasse hat eigentlich "riesig"?
man liest sich
Wilhelm
Welche Ausmasse hat eigentlich "riesig"?
Ach... so 10-11k an Einträgen. Wird zwar per LIMIT so geregelt, dass nicht zu viel auf einmal kommt, der Aufbau ist trotzdem Elend lang wenn man, sagen wir mal, 100 Datensätze pro Seite betrachten will.
mfg
Micha
habe d'ehre MiSo
Ach... so 10-11k an Einträgen. Wird zwar per LIMIT so geregelt, dass nicht zu viel auf einmal kommt, der Aufbau ist trotzdem Elend lang wenn man, sagen wir mal, 100 Datensätze pro Seite betrachten will.
Naja, riesig definiere ich anders. :-)
Wenn das Ganze dann noch in einem internen Netzwerk laeuft ist eine Validierung Deiner Applikation anzuraten (Datenmodell, Codeoptimierung etc.).
man liest sich
Wilhelm
Hallo,
was spricht dagegen die gleiche Seite mit dem Link nochmal
aufzurufen und mit dem Link einen GET Parameter zu übergeben?Die Tatsache, dass die Seite neu geladen werden muss. Schon mal probiert bei ner riesigen Kundendatenbank ein Paar Tabellen zu zeichnen? Der Seitenaufbau geht bis zu 10 Sekunden. Wenn die geschichte dann jedes mal neu geladen wird wenn du sagen wir nen Kunden löschen willst hat man seinen Spass...
Abgesehen davon, dass der Benutzer in irgendeiner Form über die gerade durchgeführten Änderungen informiert werden will bzw. soll, gibt es immer noch den HTTP Status Code 204, der, einen hinreichend standard-konformen Browser vorasgesetzt, dafür sorgt, dass sich der Inhalt am Client nicht aktualisiert.
Grüße
Klaus
Hi,
Wenn die geschichte dann jedes mal neu geladen wird wenn du sagen wir nen Kunden löschen willst hat man seinen Spass...
wenn man einen Kunden löschen will - was ich grundsätzlich für sehr löblich halte - sollte man in der Tat die Wasserpistole nicht erst neu laden müssen. Was den Spaß betrifft, überlasse ich das mal lieber den persönlichen Neigungen.
Cheatah, SCNR
Hi,
Üblicherweise mach ichs mit PHP; Ajax ruft afaik in X(HT)ML Dokumenten funktionen auf; gehts auch mit funktionen in PHP docs aufrufen?
das solltest du dir nochmal genauer anschauen.
Du kannst also per AJAX dein PHP-Skript anstoßen und die entsprechenden Operationen ausführen lassen.
MfG
Rouven
gruss("Rouven");
Also könnt ich theoretisch gesehen auch, wenn ich sagen wir mal nen Datensatz löschen will, das ganze so einstellen, dass der Link eine JS-Funktion auslöst, die ein Skript "delete.php" aufruft mit ner ID oder sonst was als POST übergeben, welches dann was löscht (im Hintergrund, ohne dass der Benutzer was davon mitbekommt) und den Datensatz dann anschließend über z.B. CSS ausblenden?
mfg
Micha
Hi,
Also könnt ich theoretisch gesehen auch, wenn ich sagen wir mal nen Datensatz löschen will, das ganze so einstellen, dass der Link eine JS-Funktion auslöst, die ein Skript "delete.php" aufruft mit ner ID oder sonst was als POST übergeben, welches dann was löscht (im Hintergrund, ohne dass der Benutzer was davon mitbekommt) und den Datensatz dann anschließend über z.B. CSS ausblenden?
genau, du solltest dabei noch entsprechend ein XML o.ä. Dokument zurückliefern, so dass deine JS erkennen kann, ob der Löschvorgang auch wirklich erfolgreich war bzw. anderweitig Fehlerinformationen anzeigen kann.
MfG
Rouven
habe d'ehre MiSo
Sorry, ich wusste nicht so genau, wie ich das Thema bezeichnen soll. Mir gehts darum, dass der Benutzer der webseite irgendwas anklicken kann, sagen wir nen Link und anschließend unsichtbar für den Benutzer eine SQL-Abfrage ausgeführt wird.
Duerfte auch schwierig sein, einem MySQL beim abrattern der Daten zuzuschauen.
Üblicherwerweise macht mans ja mit Seite neu laden & PHP aber das kanns ja nicht sein, oder?
Nach dem der Benutzer wie Du sagst etwas anklicken soll, gehe ich davon aus, dass dieser Benutzer auch das Ergebnis seines Klicks sehen soll. Ergo muss der Server irgendwas zurueckliefern, egal wie Du das regelst. Einfach nur Links anklicken ohne was zu sehen halte ich persoenlich fuer extrem langweilig. Wenn ich auf der Fernbedienung meines TV-Geraetes die Taste 2 druecke, erwarte ich ja auch das dahinter gespeicherte Programm zu sehen. Wie das entsprechende Programm dann auf meinen Bildschirm kommt? Ist mir voellig egal![1]
man liest sich
Wilhelm
[1] Nein, ich will jetzt keine Abhandlung von Elektroden, Roehrensignalen und sonstigem elektrotechnischen Krimskrams. :-)