2011-06-03 66 views
4

我正在嘗試構建我的第一個jQuery Web應用程序,但是我碰到了一個障礙,似乎無法弄清楚這一點。將php鏈接到jquery

我有一個PHP頁面和一個HTML頁面。 HTML頁面有一個帶有三下拉列表的表單。 PHP頁面連接到數據庫,但我不確定如何從php頁面傳遞查詢結果來填充html/javascript頁面上的下拉列表。

這是我的代碼到目前爲止。

HTML:

<script src="http://code.jquery.com/jquery-latest.js"></script> 
<script type="text/javascript"> 

$(document).ready(function() { 
$("#selector").submit(function() { 

    $.ajax({ 
     type: "GET", 
     url: "DBConnect.php", 
     success: function(msg){ 
     alert(msg); 
     } 
}); 

var select_car_make = $('#select_car_make').attr('value'); 
    var select_car_model = $('#select_car_model').attr('value'); 
    var select_car_year = $('#select_car_year').attr('value'); 
    alert("submitted"); 


    }); //end submit 
}); 
</script> 

<h1 style="alignment-adjust:center">Car information:</h1> 
<hr /> 
<div id="results"> 

<form action="get.php" id="selector" method="get" name="sizer"> 
<table width="451" height="70" border="0"> 

     <th width="145" height="66" scope="row"><label for="select_car_make"></label> 
      <div align="center"> 
      <select name="select_car_make" id="select_car_make" onchange=""> 
      </select> 
     </div></th> 
    <td width="144"><label for="select_car_model"></label> 
     <div align="center"> 
     <select name="select_car_model" id="select_car_model"> 
     </select> 
     </div></td> 
    <td width="140"><label for="select_car_year"></label> 
     <div align="center"> 
     <select name="select_car_year" id="select_car_year"> 
     </select> 
     </div></td> 
    </tr> 
</table> 

<input name="completed" type="submit" value="submit" /> 
</form> 

這裏是PHP頁面:

<?php 

$DBConnect = mysqli_connect("localhost", "root", "password", "testing") 
or die("<p>Unable to select the database.</p>" . "<p> Error code " . mysqli_errno($DBConnect) . ": " . mysqli_error($DBConnect)) . "<p>"; 

echo "<p>Successfully opened the database.</p>"; 


$SQLString1 = " SELECT car_make FROM cars"; 
$QueryResult = mysqli_query($DBConnect, $SQLString1) 
+0

您可以將HTML頁面保存爲PHP頁面,然後將其保存在HTML標籤標籤中,並使用PHP來填充數據庫中的數據。 – NightHawk 2011-06-03 18:52:49

回答

1

你應該能夠JSON編碼從PHP你的結果成Javascript或Jquery的可以讀取的變量。我沒有像這樣與我從PHP接收的圖像串讀取圖像的目錄:

var imageFiles = '<?=$images_js?>'; 
    imageFiles = $.parseJSON(imageFiles); 

    var images = []; 
    for(i = 0; i<imageFiles.length; i++){ 
     var image = document.createElement('img'); 
     image.src = imageFiles[i]; 
     images.push(image); 

    } 
    var count = imageFiles.length; 
    var i = 0; 

的是來自我的PHP結果的變量。 $.parseJSON(imageFiles);對變量做了解釋。

我希望這會有所幫助,或讓您走上正確的道路。

2

嘿賈斯汀如果這是你第一次蘸你的腳趾,我會保持它非常簡單。將選擇框放在帶有ID的東西里面,例如一個span或div。然後讓你的Ajax響應剛剛改寫的內容,這是一個簡單而明確的方式開始與AJAX,例如:只是呼應了整個選擇框

$.ajax({ 
    type: "POST", 
    url: "/call.php", 
    data: "var=" + myData, 
    success: function(response){ 
     $("#someId").html(response); 
    } 
}); 

在遠程頁面:

echo "<select name='cars'>"; 
echo "<option value='".$value."'>".$name."</option>"; 
etc... 

這不是最好的方法,但它肯定不是最差的。

0

如果你想讓汽車製作選擇頁面由你的數據庫填充,你也應該給它一個.php擴展名。我想你應該重新考慮一下,如果AJAX是最好的選擇。

但是我會將數據庫連接代碼放入一個「conn.php」文件中,以包含在您的選擇頁面中,然後用PHP填充它。