I'm trying to use jQuery.post() function to retrieve some data. But i get no ouput.
Ben bir tablo görüntüleyen bir HTML var. Bu tabloyu tıklayarak bir jQuery.post olayı tetiklemesi gerekir.
Benim scriptfile bu gibi görünüyor:
jQuery(document).ready(function() {
jQuery('#storeListTable tr').click(function() {
var storeID = this.cells[0].innerHTML; //This gets me the rowID for the DB call.
jQuery.post("../functions.php", { storeID: "storeID" },
function(data){
alert(data.name); // To test if I get any output
}, "json");
});
});
Benim PHP dosyası gibi görünüyor:
<?php
inlcude_once('dal.php');
//Get store data, and ouput it as JSON.
function getStoreInformation($storeID)
{
$storeID = "9";//$_GET["storeID"];
$sl = new storeLocator();
$result = $sl->getStoreData($storeID);
while ($row = mysql_fetch_assoc($result)) {
{
$arr[] = $row;
}
$storeData = json_encode($arr);
echo $storeData; //Output JSON data
}
?>
Ben PHP dosyasını test ettik ve bu JSON biçiminde verileri verir. Benim tek sorun şimdi benim javascript bu verileri döndürmektir.
- javascript teh / js / klasöründe bulunan bu yana, bu '.. /' kullanarak php dosyayı aramak için doğrudur?
- Ben doğru StoreID parametre geçirerek sanmıyorum. Doğru yolu nedir?
- How can I call the getStoreInformation($storeID) funtion and pass on the parameter? The jQuery example on jQuery.com has the folloing line: $.post("test.php", { func: "getNameAndTime" } Is the getNameAndTime the name of the function in test.php ?
Ben gerçekten really bu konuda biraz yardıma ihtiyacım var. Ben şimdi 6 gün boyunca sıkışmış oldum: (
Hızlı tepki çocuklar için teşekkür ederiz.
I have gotten one step further. I have moved the code from inside the function(), to outside. So now the php code is run when the file is executed.
Benim js komut artık bu gibi görünüyor:
jQuery('#storeListTable tr').click(function() {
var storeID = this.cells[0].innerHTML;
jQuery.post("get_storeData.php", { sID: storeID },
function(data){
alert(data);
}, "text");
});
This results in an alert window which ouputs the store data as string in JSON format. (because I have changed "json" to "text").
JSON dizesi gibi görünüyor:
[{"id":"9","name":"Brandstad Byporten","street1":"Jernbanetorget","street2":null,"zipcode":"0154","city":"Oslo","phone":"23362011","fax":"22178889","www":"http:\/\/www.brandstad.no","email":"bs.byporten@brandstad.no","opening_hours":"Man-Fre 10-21, L","active":"pending"}]
Now, what I really want, is to ouput the data from JSON. So I would change "text" to "json" and "alert(data)" to "alert(data.name)". So now my js script will look like this:
jQuery('#storeListTable tr').click(function() {
var storeID = this.cells[0].innerHTML;
jQuery.post("get_storeData.php", { sID: storeID },
function(data){
alert(data.name);
}, "json");
});
Unfortunately, the only output I get, is "Undefined". And if I change "alert(data.name);" to "alert(data);", the output is "[object Object]".
Peki nasıl çıktı teh mağazanın adı ne?
In the PHP file, I've tried setting $storeID = $_GET["sID"]; But I don't et the value. How can I get the value that is passed as paramter in jQuery.post ? (currently I have hardcoded the storeID, for testing)