2014-01-12 137 views
-1

我有一个显示多个单选按钮这样的PHP代码:运行SQL查询检查

<?php 
foreach ($_SESSION["resellers"] as $reseller) { 
    $sql2="SELECT * from reseller where sequence = '".$reseller."' "; 
    $rs2=mysql_query($sql2,$conn) or die(mysql_error()); 
    $result2=mysql_fetch_array($rs2); 
    echo '<input type="radio" name="reseller" value="'.$reseller.'" /> '.$result2["company"].'<br>'; 
} 
?> 

我想运行其他SQL查询低一点下来基于检查的单选按钮的页面:

<select name="reseller_customer"> 
<option value="">Please Choose</option> 
<?php 
$sql2="SELECT * from customer where resellerid = '".$reseller."' "; 
$rs2=mysql_query($sql2,$conn) or die(mysql_error()); 
$result2=mysql_fetch_array($rs2); 
echo '<option value="'.$reseller.'">'.$result2["company"].'</option>'; 
?> 
</select> 

我该怎么办的where resellerid = "CHECKED RADIO BUTTON"

回答

1

为此,您应该使用一些Ajax调用或东西,因为PHP当用户选择的无线电已经被执行按钮。

要获得所选择的单选按钮,您可以使用jQuery:

<script> 
    var id = $("#myform input[type='radio']:checked").val(); 
</sciprt> 

然后,您可以发送的$ id一个Ajax请求执行所需的SQL。

您还可以检查此:How can I know which radio button is selected via jQuery?

而Ajax请求应该是这样的:

$id = $_POST["id"]; 

function myAjaxRequest(id) { 
    $.ajax({ 
     url: 'http://path/to/file/with/the/sql/function', 
     type: 'POST', 
     data: {id: id}, 
     success: function (response) { 
      alert ("Everything went fine!)"; 
     } 
    }); 
} 

在与SQL函数的文件,你可以得到选择的ID

+0

这不是设置PHP值$ ID发送到选中的单选按钮 – user2710234

+0

I的值改变为$ ID = $( “#myForm的输入[名称= '经销商']:检查”)。 VAL(); – user2710234

+0

这是javascript,所以它应该是var id = ...我编辑了答案。但是你还没有完成。您应该将此值传递给ajax请求。 –

0

由于“CHECKED RADIO BUTTON”本身不是值,因此您之前所做的相同查询应该按照您的需要进行。当选中一个单选按钮时,只有选中的单选按钮的值被传递给数据库。

+0

它的foreach循环内的“经销商”单选按钮的值 – user2710234

0
<script> 
     $(document).ready(function() { 
      $("input[name='reseller']").change(function() { 
       var resellerid = $(this).val(); 

       $.ajax({ 
        type: "POST", 
        url: "company.php", 
        data: {resellerid: resellerid} 
       }) 
         .done(function(company) { 
          $("select[name='reseller_customer'] option[value='']").next().remove(); 
          $("select[name='reseller_customer']").append("<option value='" + resellerid + "'>" + company + "</option>"); 
         }); 
      }); 
     }); 
    </script>