Sende PHP-Variable an JavaScript-Funktion [duplizieren]

9

Ich habe eine PHP-Datei, die eine Variable generiert und ich möchte, dass die Variable in eine JavaScript-Funktion eingefügt wird, die durch einen Klick auf der Hauptseite aufgerufen wird. Ist es möglich, von PHP zu Javascript zu senden?

    
user1879926 05.12.2012, 20:27
quelle

6 Antworten

16

Sie können Folgendes tun:

%Vor%     
Omar Jackman 05.12.2012, 20:31
quelle
5

Ihr JavaScript müsste in einer PHP-geparsten Datei definiert werden.

Zum Beispiel könnten Sie in index.php

platzieren %Vor%     
Jason 05.12.2012 20:30
quelle
5

Schreiben Sie einfach:

%Vor%

Jetzt ist es als JavaScript-Variable mit dem Namen my_variable_name an einem beliebigen Punkt unterhalb des obigen Codes verfügbar.

    
Hubro 05.12.2012 20:31
quelle
1

Eine gute Option ist die Verwendung von jQuery / AJAX. Schauen Sie sich diese Beispiele an und probiere sie auf deinem Server aus. Beachten Sie in diesem Beispiel in FILE1.php, dass es einen leeren Wert übergibt. Wenn Sie möchten, können Sie einen Wert übergeben, der ungefähr so ​​aussehen könnte (unter der Annahme, dass die JavaScript-Variablen username und password :

lauten %Vor%

Im Beispiel FILE2.php würden Sie diese Werte wie folgt abrufen:

%Vor%

Dann suche deine MySQL nach und gebe die Werte zurück:

%Vor%

Dies würde die Nachricht You are logged in an die Erfolgsfunktion in FILE1.php übergeben, und der Nachrichtenstring würde in der Variablen namens "data" gespeichert werden. Daher würde die alert(data); -Zeile in der Erfolgsfunktion diese Nachricht alarmieren. Natürlich können Sie echo alles, was Sie mögen, sogar große Mengen an HTML, wie ganze Tabellenstrukturen.

Hier ist ein weiteres gutes Beispiel , das Sie überprüfen sollten .

Der Ansatz besteht darin, Ihr Formular zu erstellen und dann jQuery zu verwenden, um die Schaltfläche zu erkennen und die Daten über AJAX an eine sekundäre PHP-Datei zu senden. Die obigen Beispiele zeigen, wie das geht.

Die sekundäre PHP-Datei empfängt die Variablen (falls solche gesendet werden) und gibt eine Antwort zurück (was auch immer Sie zum Senden auswählen). Diese Antwort wird dann im Abschnitt Erfolg: Ihres AJAX-Aufrufs als "Daten" (in diesen Beispielen) angezeigt.

Der jQuery / AJAX-Code ist Javascript, Sie haben also zwei Möglichkeiten: Sie können sie innerhalb von <script type="text/javascript"></script> -Tags innerhalb Ihres Haupt-PHP-Dokuments platzieren, oder Sie können <?php include "my_javascript_stuff.js"; ?> am Ende Ihres PHP-Dokuments eingeben. Wenn Sie jQuery verwenden, vergessen Sie nicht, die jQuery-Bibliothek wie in den gegebenen Beispielen hinzuzufügen.

In Ihrem Fall klingt es so, als könnten Sie das erste Beispiel, das ich vorgeschlagen habe, ziemlich genau spiegeln, keine Daten senden und die Antwort in der AJAX-Erfolgsfunktion erhalten. Was auch immer Sie mit diesen Daten tun müssen, müssen Sie innerhalb der Erfolgsfunktion tun. Scheint zunächst etwas komisch, aber es funktioniert.

    
crashwap 05.12.2012 20:41
quelle
1

Wenn ich Sie richtig verstehe, sollten Sie in der Lage sein, etwas in folgender Richtung zu tun:

%Vor%     
username tbd 05.12.2012 20:30
quelle
0

Sie können PHP-Werte an JavaScript übergeben. Das PHP wird serverseitig ausgeführt, so dass der Wert berechnet wird, und Sie können es dann dem HTML mit dem Javascript hinzufügen. Das Javascript wird dann im Client-Browser mit dem Wert PHP serverseitig berechnet ausgeführt.

%Vor%     
Ren 05.12.2012 20:31
quelle

Tags und Links