2013-10-11 58 views
1

我發送一個ajax請求到php文件,我將更新數據庫,並且我會根據自己的情況選擇一個值。但是如何在ajax回調中返回$變量並在輸入文本框中顯示它。如何在ajax回調中返回一個php變量並使用它?

$.ajax({ 
    url:'updatenewuser.php', 
    data: { 
     bookid: bookid, 
     id: 2, 
     startdate: cal 
    }, // pass data 
    success:function(data) {  
    } 
}); 

我的PHP文件是

<?php 
$conn = mysql_connect('localhost', 'root', 'root') or die("error connecting1..."); 
mysql_select_db("cubitoindemo",$conn) or die("error connecting database..."); 
if($_GET['id']==2) //taking 
{ 
    $book_id = $_GET['bookid']; 
    $startdate = $_GET['startdate']; 
    $update_validity = "UPDATE booking SET valid = '2',start_date_timestamp = '$startdate' where book_id = '$book_id'"; 
    $query = mysql_query($update_validity); 
    if($query==TRUE) 
    { 
     $get_select_query = "select start_date_timestamp from booking where book_id = '$book_id'"; 
     $get_query = mysql_query($get_select_query); 
     $row = mysql_fetch_assoc(get_query); 
     $startdate_return = $row['start_date_timestamp']; 
     echo $startdate_return; 
    } 
} 
?> 
+0

我們可以看你怎麼做的請求,並從你的PHP代碼返回了什麼? –

+0

請發佈您的PHP代碼。 –

+0

爲什麼不返回PHP變量的值並將其賦值給JS變量以使用它。 –

回答

1

在你的頁面像<span>創建一個元素,並給它一個唯一的ID喜歡<span id="testspan"></span>。這是文本顯示的位置。然後在你的JS中;

$.ajax({ 
    url:'updatenewuser.php', 
    data: { 
     bookid: bookid, 
     id: 2, 
     startdate: cal 
    }, // pass data 
    success:function(result) { 
     $("#testspan").html(result); 
    } 
}); 
+0

感謝兄弟@blasteralfred。其工作 – gokul

+0

不客氣@gokul :) –

1

在你的PHP文件只是echo,輸出(而不是通過瀏覽器作爲默認的PHP頁面所顯示)將在JS是可用作爲Ajax調用(data

+0

謝謝@邁克爾 – gokul

1

的結果嘗試使用val()

HTML

<input type="text" id="inputId" /> 

的js

$.ajax({ 
    url:'updatenewuser.php', 
    data: { 
     bookid: bookid, 
     id: 2, 
     startdate: cal 
    }, // pass data 
    success:function(data) { 
     $("#inputId").val(data); 
    } 
}); 

PHP CODE

<?php 
    echo $bookid= isset($_REQUEST['bookid']) ? $_REQUEST['bookid'] : "No bookid"; 
    // you can use $_GET for get method and $_POST for post method of ajax call 
    return 
?> 
+0

謝謝@Rohan庫馬爾 – gokul

1

在updatenewuser.php

//after all operations 

echo $variable_to_pass; 

然後在AJAX請求:

$.ajax({ 
    url:'updatenewuser.php', 
    data: { 
     bookid: bookid, 
     id: 2, 
     startdate: cal 
    }, // pass data 
    success:function(result) { 
     alert(result);//result will be the value of variable returned. 
     $("#input_box").val(result); //jquery 
     document.getElementById("input_box").value = result; // Javascript way 

    } 
}); 

HTML之中:

<input type="text" id="input_box" value=""/> 

乾杯

2

你應該使用像JSON格式:在你

在你的PHP文件

$arrFromDb = array(
'id' => 1, 
'bookName' => 'Da Vinci Code' 
) 

echo json_encode($arrFromDb); exit(); 

腳本

$.ajax({ 
    url:'updatenewuser.php', 
    data: { 
     bookid: bookid, 
     id: 2, 
     startdate: cal 
    }, // pass data 
    success:function(data) { 
     var book = $.parseJSON(data) // now book is a javascript object 
     var bookName = book.bookName; 
    } 
}); 

我希望這將有助於你

+0

我不使用你的方法,但現在我知道我可以用戶json太..謝謝@Cristian – gokul

+0

這是最好的解決方案當你說你想使用PHP頁面的特定變量 –

相關問題