-1

我似乎无法从 HTML 表单中检索 post 变量的值.. 由于某种原因.. 这通常很简单,但是当我转到分数 PHP 文件时.. 没有检索到任何表单值:(

<?php
$id = $_GET['id'];    
?>

 <form action="score.php" method ="post">
    <table border="0">
        <tr> 
            <td>
                <input type="radio" name="score" id="<?php echo $id ?>" value="2" />      
                <img style ="position:relative; left:-90;top:-20" src="./images/+2.png" /> 
            </td> 
        </tr>
        <tr>
            <td>
                <input type="radio" name="score" id="<?php echo $id ?>" value="3"/>
                <img style ="position:relative; left:-90;top:-20" src="./images/+3.png" /> 
            </td>
        </tr>                    
        <tr>
            <td>
                <input type="radio" name="score" id="<?php echo $id ?>" value="-1" /> 
                <img style ="position:relative; left:-90;top:-20" src="./images/-1.png" /> 
            </td>
        </tr>
        <tr>
            <td>
                <input type="radio" name="score" id="<?php echo $id ?>" value="-2"/>
                <img style ="position:relative; left:-90;top:-20" src="./images/-2.png" />
            </td>
        </tr> 
        <tr>
            <td>
                <input type="submit" id="mysubmit" value="Submit score"  />
            </td>
        </tr>
    </table>
</form>

下面是 score.php 文件..

<?php
require('../madscore/database/connect.php');
?>
<?php
 database_connect();
$id = $_POST['id']; 
$value = $_POST['value'];  
$query = "UPDATE people SET Score= Score +".$value."WHERE ID ='".$id."'";
var_dump($query);exit;
$result = $connection->query($query);
$row_count = $result->num_rows;
var_dump($row_count);

?>
4

2 回答 2

1

可能是因为您name="score"在所有表单元素中都使用了。将名称元素更改为name="id"name="value"查看它是否有效

于 2012-12-22T22:44:57.193 回答
1

我认为你应该使用

$value = $_POST['score'];

代替

$value = $_POST['value'];

至于 POST 中的 ID:您可以添加一个不可见的输入元素,它包含 GET 给出的 ID 值。这样,它将保存在 POST 中。

<input type="hidden" name="id" value="<?php echo $_GET['id']; ?>" />
于 2012-12-22T22:48:28.253 回答