2016-07-20 14 views
2

Ich bekomme Daten von meiner Datenbank, ohne die Seite neu zu laden, indem ich auf eine php Seite poste.Mehrere Variablen vom Post zum PHP bekommen

function getdata() { 
    $.post("somepath/getdata.php", function(o) { 
    var texts = o.split('&;'); 
    // o is respond from php script 
    }); 
} 

Die PHP sieht wie folgt aus:

<?php 
$var1 = 'bar'; 
$var2 = 'foo'; 
//vars come from database 

echo $var1."&;".$var2; 
?> 

Mein Problem ist, dass ich mehrere Variablen von PHP übergeben wollen, ohne sie in einen String zu setzen und sie durch eine Art von Separator trennen (in diesem Fall &;). Ist es möglich, solche Variablen direkt an jquery zu übergeben, ohne sie zu wiederholen?

+0

festgelegten Schlüsselnamen verwenden, um alle Werte in ein Array einzufügen – ihemant360

Antwort

1

In PHP Sie Ihre Rückkehr Variablen auf ein Array und json_encode es schieben kann:

$result = array(); 
$result["var1"] = 'bar'; 
$result["var2"] = 'foo'; 

echo json_encode($result); 

Dies gibt eine Zeichenfolge, die wie folgt aussieht:

{"var1":"bar","var2":"foo"} 

Und dann in JavaScript:

function getdata() { 
    $.post("somepath/getdata.php", function(o) { 
     var data = JSON.parse(o); 
     console.log(data.var1); // logs "bar" 
     console.log(data.var2); // logs "foo" 
    }); 
} 

Das Ergebnis wird als String zurückgegeben, also müssen wir es zuerst in ein JSON-Objekt analysieren t unter Verwendung JSON.parse. Sie können dann auf die Werte zugreifen, indem Sie den in PHP

Verwandte Themen