从javascript函数调用我的php脚本

时间:2013-06-14 18:01:46

标签: php jquery ajax

我有一个表单,在提交时调用php脚本来创建基于数据库查询的下拉列表。然后我需要能够在下拉列表中选择一个项目,点击一个按钮并填写一个填充结果的表格。

我的表单设置如下:使用一个提交按钮,以及另一个调用javascript函数的按钮类型。

<form name="searchForm" action="newCustomerSearchform.php" method="post">
 <label><span></span> <input type="text" name="searchDB" /></label>
 <button type="submit" name="btnSearch" value="Search"  id="btnSearch" onclick="this.form.action">Search</button></label>

<?php
  if (isset($_SESSION['names'])){
        echo  '<select  id ="customerDD" name="customerDD" class="customers">';

        foreach ($_SESSION['names'] as $option => $value) {
                echo  '<option value='.$value['ID'].'>'.$value['First_Name'].' '.$value['Surname'].'</option>';
}
        echo  '</select>';
}
if (isset($_SESSION['addnames'])){
        echo 'set';
       echo $_SESSION['addnames'];
  }
?>
 <button type="button" name="btnAdd" value="add" id="btnAdd" onclick=addcustomer();> Add</button>
</form>

第二个按钮调用:

<script type="text/javascript">
var temp = null;
function addcustomer()
{
temp = $("#customerDD").val();
$.post('newCustomerAdd.php', {variable: temp});
}
</script>

当我使用

测试时
document.write(test);

它显示了我在下拉列表中选择的正确值。

newCustomerAdd.pp使用javascript函数中的变量包含对我的数据库的查询,然后将其保存在我用于在主页面上显示的会话变量中。

<?php
include 'newCustomer.php';
connect('final');

    $temp = $_POST['temp'];
    $temp = htmlspecialchars($temp); // stop HTML charkacters
    $temp= mysql_real_escape_string($temp); //stop SQL injection
    $query = "SELECT * FROM customer WHERE ID = '$temp";
    $data = mysql_query($query) or die(mysql_error());


    $Customers = array();
    $colNames = array();
    while($row = mysql_fetch_assoc($data)){// puts data from database into array, loops until no more

    $Customers[] = $row;

        }
         $anymatches = mysql_num_rows($data); //checks if the querys returned any results
        if ($anymatches != 0) {
        $_SESSION['addnames']=$Customers;

    $colNames = array_keys(reset($Customers));




    }

            if ($anymatches == 0) 
                    { 
                        echo "Sorry, but we can not find an entry to match your query<br><br>"; 
                    } 




header("location: newCustomer.php");
?>

然后我测试是否在表单中设置了此变量并回显变量,但没有生成任何内容。

我的Jquery似乎有问题,因为变量没有发布到php脚本。

0 个答案:

没有答案