Heim > Web-Frontend > js-Tutorial > So übergeben Sie den Wert einer js-Variablen an PHP

So übergeben Sie den Wert einer js-Variablen an PHP

不言
Freigeben: 2018-07-14 11:39:07
Original
18649 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich vor, wie man js-Variablenwerte in PHP überträgt. Jetzt kann ich ihn mit allen teilen, die ihn benötigen

Zusammenfassung 🎜>

Zusammenfassung in einem Satz: Übergeben Sie Parameter an das Backend und verwenden Sie Ajax oder natives JS, um die URL zu verbinden. Verstehen Sie das Prinzip und verstehen Sie, dass das System zuerst PHP analysiert und dann HTML-Code und JS-Code ausführt.

2. Verwenden Sie Ajax

1. Senden Sie Daten auf der Seite: Ajax

2. Holen Sie sich Parameter auf der PHP-Seite: $val = $_POST['val']

Referenzcode (jquery):

$.ajax({
type: 'POST',
url: 'save.php',
data: {val: text1obj.value}
success: function(msg){// msg: php返回内容/* alert(修改成功); */window.location = window.location;
},
error:function(msg){// 提交失败}
});
Nach dem Login kopieren

Frage:

<SCRIPT LANGUAGE="JavaScript">
var bid=document.fenlei.bfenlei.value;
<?php
$sql1="select * from s_type where b_id=&#39;$bid&#39;";
//.......
?>
</SCRIPT>
Nach dem Login kopieren

Wie übergibt man mit dem obigen Code den Gebotswert vom Dokument an das Gebot im folgende PHP-Anweisung? ? ? ?

Antwort:

不用AJAX,最简单就是传个参数过去
如:function saveGame(str){
    window.location.href=&#39;url?str=&#39; + str;
}

楼上的是一种跳转的方式。如果你想不刷新处理,获取数据。还是用ajax 。很简单的。给你个例子。这里我我用jquery的$.post
  $.post(URL,{参数1:alue,参数2:value2},function(data){
       //这里你可以处理获取的数据。我使用是json 格式。你也可以使用其它格式。或者为空,让它自己判断得了
},&#39;json&#39;);
Nach dem Login kopieren

Eine ist auf der Serverseite und die andere auf der Clientseite.


Natürlich nicht.

Ich verstehe nicht, warum Sie js verwenden müssen, um den Wert zu übergeben.

Sie können URL-Parameter direkt wie folgt verwenden: test.php?bid=1 Ist das nicht in Ordnung?

Es ist schwieriger, es mit js zu implementieren, da Sie beim Öffnen der Webseite zuerst PHP und dann js ausführen. Mit anderen Worten: Unabhängig davon, wo Ihr JS platziert ist, wird PHP vor der Ausführung von JS ausgeführt.

Wenn Sie darauf bestehen, js zum Übertragen von Werten an PHP zu verwenden, müssen Sie Ajax verwenden. Dazu müssen Sie Ihre spezifischen Anforderungen kennen.

Verwenden Sie AJAX zum Senden an den Hintergrund

Proytype-Methode:

function changeshow()
{
var bid=document.fenlei.bfenlei.value;
var url = &#39;adm_mod_ajax.php&#39;;
var pars = &#39;mtype=1&mid=&#39; + mid+&#39;&bid=&#39;+bid;
var myAjax = new Ajax.Request(
url,
{method: &#39;post&#39;, parameters: pars, onComplete: showResponse}
);
}
Nach dem Login kopieren

3. Das Insight-System analysiert zuerst PHP und führt dann Strings unter anderen Codes aus

Auf diese Weise

<script>
    function dailyTask(){
        $(&#39;#my_daily_task_calendar&#39;).datepicker().on(&#39;changeDate.datepicker.amui&#39;, function(event) {
            var dailyTaskDate=$(this).val();
            var url1="{:url(&#39;task/getDailyTaskData&#39;)}";
            var url2=&#39;?dailyTaskDate=&#39;+dailyTaskDate;
            document.location=url1+url2;
        });
    }
    dailyTask();
</script>
Nach dem Login kopieren

Apache-Server übersetzt zuerst

beim Laden der Seite 7 var url2='?dailyTaskDate='+dailyTaskDate ; Dieser Satz. Nachdem das PHP übersetzt wurde, wird es an den Browser übergeben.

Dies funktioniert nicht, da PHP Salted Fish js ausgeführt wird, sodass die Variable dailyTaskDate in js nicht gefunden wird, sodass in PHP ein ständiger Fehler gemeldet wird.

var dailyTaskDate=$(this).val();
document.location={:url(&#39;task/getDailyTaskData&#39;,array(&#39;dailyTaskDate&#39;=>dailyTaskDate))};
Nach dem Login kopieren

4. So aktualisieren Sie die Seite in der Ajax-Callback-Funktion

Bei der Demo möchte die Callback-Funktion nicht lästig sein, einfach aktualisieren Verwenden Sie location.reload(true); Dieser Satz entspricht dem Aktualisieren der Seite mit der F5-Taste. Diese Methode verbraucht möglicherweise bestimmte Ressourcen, ist aber dennoch sehr praktisch.

Der folgende Code kann die Seite mit Ajax aktualisieren, aber er nützt nichts

<script>
    function dailyTask(){
        $(&#39;#my_daily_task_calendar&#39;).datepicker().on(&#39;changeDate.datepicker.amui&#39;, function(event) {
            var dailyTaskDate=$(this).val();
            $.post("task/getDailyTaskData", { dailyTaskDate:dailyTaskDate}, function () {
                document.location.reload();
            });
        });
    }
    dailyTask();
</script>
Nach dem Login kopieren

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, das wird so sein Hilfreich für das Lernen aller. Weitere Informationen finden Sie auf der chinesischen PHP-Website für verwandte Inhalte!

Verwandte Empfehlungen:

Eine Zusammenfassung, wie js PHP aufruft und PHP js aufruft

Eine einfache Analyse der Debugging-Methoden von node.js

Das obige ist der detaillierte Inhalt vonSo übergeben Sie den Wert einer js-Variablen an PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage