Eine andere Frage von einem Neuling. Ich habe eine PHP-Variable, die die Datenbank nach einem Wert abfragt. Es wird in der Variablen $ publish gespeichert und sein Wert ändert sich (in der Datenbank), wenn ein Benutzer auf einen Hyperlink klickt.
%Vor%Was im Hintergrund passiert ist, dass ich eine Datenbanktabelle für einige Daten abfrage, die ich in der Variablen $ publish gespeichert habe. Wenn $ publish leer ist, wird ein Link für publish.html in einem Popup hinzugefügt. Das Popup wird ein Formular verarbeiten und die Daten zur Datenbank hinzufügen, was bedeutet, dass $ publish nicht mehr leer ist. Was ich erreichen möchte ist, dass, sobald das Formular im Popup bearbeitet und der Datenbank Daten hinzugefügt wurden, der Link in edit.html geändert werden sollte. Dies kann passieren, wenn die Seite die Datenbank erneut abfragt, aber ohne Seitenaktualisierung.
Wie kann es donw sein, das Javascript, jquery oder ajax verwendet ?? Bitte helfen.
Javascript selbst kann nicht verwendet werden, um mit der Datenbank umzugehen. Dies geschieht mithilfe von PHP (oder der serverseitigen Sprache Ihrer Wahl). Ajax wird verwendet, um eine Anfrage an Ihr PHP-Skript mit Javascript zu senden, das wiederum mit der Datenbank kommunizieren wird. Und es erfordert keine Seitenaktualisierung.
Was Sie also versuchen, lässt sich leicht mit Ajax erreichen. Da Sie jQuery erwähnt haben, können Sie die Methoden $ .ajax oder $ .post in jquery ausprobieren, die den Prozess noch einfacher machen.
Sie müssen das Formular mit Ajax bearbeiten. Die Ajax-Anfrage wird an ein PHP-Skript gesendet, das die notwendigen Änderungen in der Datenbank vornimmt und den neuen Link (Link zu edit.html) in die Antwort sendet. Wenn Sie die Antwort erhalten haben, ersetzen Sie einfach das aktuelle Ankerelement durch das neue Element.
für zB ..
%Vor% url
- wo sich das PHP-Skript befindet
formdataobject
- ein JavaScript-Objekt, das die Formulardaten als Schlüsselwertpaare enthält
Der dritte Parameter ist eine anonyme Funktion, die auch als Rückruffunktion bezeichnet wird, da sie nur aufgerufen wird, wenn die Antwort vom Server empfangen wird. Dies liegt daran, dass Ajax-Anfragen asynchron sind.
Innerhalb der Callback-Funktion wird jQuery verwendet, um den Text innerhalb des Anchor-Elements in edit
und das href
-Attribut in den Wert zu ändern, der in der Antwort enthalten war.
$. post bedeutet, dass wir die Post-Methode verwenden. Die Parameter können also als Elemente des Arrays $ _POST in PHP aufgerufen werden.
Nach der Aktualisierung der Datenbank können Sie einfach echo
out die neue Verbindung und es wird in der Antwort erhalten.
Auch gibt es andere Formate, in denen Sie die Antwort für zB erhalten können. xml, json.
Ich werde versuchen, den technischen Jargon beiseite zu lassen und eine allgemeinere Antwort zu geben, da ich denke, dass Sie mit clientseitigen und serverseitigen Skripten verwechselt werden könnten.
Stellen Sie sich Javascript als eine Sprache vor, die Ihren WEB-BROWSER nur anweisen kann, wie er sich verhalten soll. Javascript wird ausgeführt, nachdem der Server die Verarbeitung Ihrer Webseite bereits abgeschlossen hat.
PHP hingegen läuft auf Ihrem Webserver und kann mit Ihrer Datenbank kommunizieren. Wenn Sie Informationen aus Ihrer Datenbank mit Javascript erhalten möchten, müssen Sie Javascript fragen, ob PHP die Datenbank über einen AJAX-Aufruf an ein PHP-Skript abfragen soll.
Zum Beispiel könnten Sie Javascript aufrufen wie: Ссылка
Zusammenfassend: Javascript kann keine Verbindung zur Datenbank herstellen, aber es kann PHP dazu auffordern. Ich hoffe, das hilft.
Lassen Sie mich versuchen, Sie möchten den Link in einer Seite aus einem Pop-up-Fenster für die Formularverarbeitung ändern. Versuchen Sie, Ihrem Link einen Container zu geben:
%Vor%Wie bei der Formularübermittlung verwenden Sie Ajax, um Daten an den Server zu senden, um eine Aktualisierung durchzuführen und eine Antwort zurück zu erhalten, um den zu bearbeitenden Link oder etwas anderes zu ändern:
%Vor% Grundsätzlich ist Ihr Veröffentlichungslink in einem div
mit einer ID publish_link
enthalten, so dass Sie den Inhalt später nach der Datenverarbeitung ändern, ohne die Seite erneut zu laden. In dem Pop-up, in dem Sie die Formularverarbeitung durchführen würden, verwenden Sie die jQuery Ajax POST-Methode, um die Daten zu übermitteln. Ihr Skript akzeptiert dann diese Daten, aktualisiert die Datenbank und gibt bei Erfolg eine Antwort zurück. Die jQuery POST-Funktion empfängt diese Antwort, und dort wird überprüft, ob isPublished
wahr ist, das öffnende Fenster des Popups (Ihr Hauptfenster) aufgerufen und der Link zu Edit
aktualisiert. Nur eine Idee, vielleicht nicht die beste da draußen.
Nun, ich denke, ich verstehe Ihre Quaestion, aber Sie müssen einen Ausgangspunkt bekommen, versuchen Sie es zu verstehen:
Tags und Links javascript jquery php ajax