2012-03-02 77 views
0
<form name="update" method="post" action="ex_update.php?get_id=<?php echo $_GET['id']; ?>"> 
      <p><strong>Enter Name:</strong> 
      <input type="text" name="name"> 
      <br /> 
      ID: 
      <label for="select"></label> 
      <select name="id"> 
      <?php 
       $query = "SELECT * FROM test"; 
       $run = mysql_query($query); 
       while($output = mysql_fetch_array($run)){ 
       echo "<option value=\"{$output['id']}\">{$output['id']}</option>";} 
      ?> 
      </select> 
      </p> 
      <p> 
      <input type="submit" name="submit" value="Update!"> 
      </p> 
     </form> 

这是我通过提交的表单。我很确定问题出现在表单中,因为每次提交时都会得到index.php?id = ||的index.php?ID = 0 所以问题是,我想接机,我在选择菜单中选择如何使用PHP和MYSQL获取URL中的id?

非常感谢 FarrisFahad

+0

http://stackoverflow.com/questions/how-to-ask – hakre 2012-03-02 16:28:53

回答

2

变化methodGET id和从该东东删除行动。它会自动把id放入get中。我也为你修好了你的标签。

<?php 

$connect = mysql_connect("localhost","root",""); 
$sel_database = mysql_select_db("test"); 
$id = (int)$_POST['id']; 
?> 

<table bordercolor="#0099FF" width="1000" border="5" align="center" cellpadding="5" cellspacing="5"> 
    <tr> 
    <td><form name="get_id" method="GET" action="Test.php"> 
     <label for="select">ID:</label> 
     <select name="id" id="select"> 
      <?php 
       $query = "SELECT * FROM test"; 
       $run = mysql_query($query); 
       while($output = mysql_fetch_array($run)){ 
       echo "<option value=\"{$output['id']}\">{$output['id']}</option>";} 
      ?> 
     </select> 
     <input type="submit" id="button" value="Submit"></form> 
    </td> 

如果必须使用GET和POST试试这个

<?php 

$connect = mysql_connect("localhost","root",""); 
$sel_database = mysql_select_db("test"); 
$id = (int)$_POST['id']; 
?> 
<script type="text/javascript"> 
    function changeAction() { 
     document.get_id.action = 'Test.php?id=' + document.get_id.options[document.get_id.selectedIndex].value; 
    } 
</script> 
<table bordercolor="#0099FF" width="1000" border="5" align="center" cellpadding="5" cellspacing="5"> 
    <tr> 
    <td><form name="get_id" method="POST" action="Test.php"> 
     <label for="select">ID:</label> 
     <select name="id" id="select" onchange="changeAction"> 
      <?php 
       $query = "SELECT * FROM test"; 
       $run = mysql_query($query); 
       while($output = mysql_fetch_array($run)){ 
       echo "<option value=\"{$output['id']}\">{$output['id']}</option>";} 
      ?> 
     </select> 
     <input type="submit" id="button" value="Submit"></form> 
    </td> 
+0

但如果我有,我想一种形式发布一些信息并获取其他的信息? – FarrisFahad 2012-03-02 16:33:05

+0

你为什么要这么做?有特定的目的吗? – Bot 2012-03-02 16:34:22

+0

@FarrisFahad我更新了我的答案,给你两个解决方案。第二个没有经过测试,但应该工作。 – Bot 2012-03-02 16:43:42