0

我正在尝试使用具有相同名称的提交按钮从数据库中检索信息。我给出的值是行的 id,所以我可以做出不同的动作,但我无法下定决心如何做到这一点。

例如,当这样尝试时

<form name="form" action="index.php" method="post">
<input type="image" name="x" value="1">

<input type="image" name="x" value="2">
</form>

和 php =>

<?php
if (isset($_POST['x'])){
    echo $_POST['x'];
}
?>

在chrome中它工作正常,但在其他浏览器中它没有,有什么想法吗?谢谢

更新

if ($r = $con->query("SELECT * FROM table")){
    if ($row = $r->fetch_assoc()){
        echo "<input type='image' name='submit' value='" . $row['id'] . "'>";
        // and other data which I need to
    }
    $r->free();
}

我的意思是这样

4

1 回答 1

1

HTML

<form id="form1" action="index.php" method="post">
   <input type="button" name="x" value="1">    
   <input type="button" name="x" value="2">
   <input type="text" name="action" id="action">
</form>​

​ JavaScript

var nodes = document.getElementById('form1').childNodes;
for(var i=0; i<nodes.length; i++) {    
    nodes[i].onclick = function(){        
        if(this.name == 'x'){
          document.getElementById('action').value = this.value;
        }
    };
}

PHP

if(isset($_POST['action'])){

   if($_POST['action'] == "1"){
      ...
   }

   if($_POST['action'] == "2"){
      ...
   }

}

​http://jsfiddle.net/qLubz/

只需更改type="text"type="hidden"准备部署时。

或者不使用 JavaScript:

<form action="index.php" method="post">
   <button type="submit" name="action" value="delete">Delete</button>
</form>​
<form action="index.php" method="post">
   <button type="submit" name="action" value="copy">Copy</button>
</form>​
<form action="index.php" method="post">
   <button type="submit" name="action" value="edit">Edit</button>
</form>​
于 2012-08-18T18:36:43.963 回答