2012-09-20 91 views
1

好吧,这让我发疯,现在我似乎无法找到解决方案!根据选择框值(php + Ajax)选择数据库表

基本上我的页面上有两个选择框,但是我希望第二个选择框从mysql数据库中填充,具体取决于第一个选择框的值。

例如,如果我从第一个选择框中选择值'misc',则第二个选择将使用我的数据库中的misc表填充! (第二个选择框将通过第一个选择框选择更改通过ajax刷新)

我唯一的问题是我想不出一种方法来存储第一个选择框的值在一个PHP变量,所以它可以在我的功能,可用于填充第二个选择框(这是由AJAX刷新)

谢谢你们

<form action="scripts/tp/process.php" method="post" enctype="multipart/form-data"> 
    Select teleport here: 
    <select name="selectmate" id="Testid" onchange='Ajax();'> 
     <option value="Misc">Misc...</option> 
     <option value="Stunt">Stunt</option> 
     <option value="deathmatches">Deathmatches</option> 
     <option value="Car"> Car </option> 
     <option value="Races">Races </option> 
    </select> 
    <br/> 
    <label for="file">Filename:</label> 
    <input name="file" type="file"/> 
    <br/> 
    <label for="Name">Teleport name:</label> 
    <input type="text" name="Name" id="Name"/> 
    <br/> 
    <label for="Tp"> Teleport command:</label> 
    <input type="text" name="Tp" id="Tp"/> 
    <br/> 
    <label for="Info">teleport infomation</label> 
    <input type="text" name="Info" id="Info"/> 
    <br/> 
    <input type="submit" name="submit" value="Submit"/> 
</form> 
<h2>Delere entry here!</h2> 
<form action="scripts/misc/miscdelete.php" method="post" enctype="multipart/form-data"> 
    <select name="deletemisc"> 
     <?php 
     ListDatabase($value); 
     ?> 
    </select> 
    <input type="submit" name="delete" value="Delete"/> 
</form> 

我要第一个选择框中的值存储在变量$值

+1

显示你已经做了什么 – MrSil

+1

你尝试了什么? –

+0

将变量存储在隐式输入中的形式-using Javascript? – Chris

回答

0
$("#Testid").change(function() { 
    var val = $("#Testid option:selected").text(); 
    // here your ajax request 
    // Fill second select here: 
    var deletemisc = $("#deletemisc"); 
    $("#deletemisc > option").remove(); 
    $.post("/path/to/script", { selected_val: val}, function(result) { 
     $.each(result, function (item) { 
      deletemist.append($("<option />").val(item.val).text(item.text)); 
     }) 
    }); 
});​ 

“/ path/to/script” - 必须返回val的json数组。