2011-06-03 39 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填充它。