微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTML / PHP很可能没有正确地从表中传递ID

如何解决HTML / PHP很可能没有正确地从表中传递ID

| 我将尝试使其简单...这是我用来从数据库填充下拉菜单代码。这将正确填充下拉菜单
<form action=\"formsubmit.PHP?team_id=6\" method=\"post\">
    <label> <br />What did they say?: <br />
        <textarea name=\"quotetext\" rows=\"10\" cols=\"26\"></textarea></label>
    <select name=\'name\'>
        <?PHP
            while ($temp = MysqL_fetch_assoc($query)) {
                echo \"<option value=\" . $temp[\'id\'] . \">\".htmlspecialchars($temp[\'lastname\']) . \",\" . htmlspecialchars($temp[\'firstname\']) . \"</option>\";
            }
        ?>
    </select>
    <input type=\"submit\" value=\"Submit!\" />
</form>
我想做的就是将这个人的ID传递到formsubmit.PHP文件中,该文件在提交表单时被调用。当我在formsubmit.PHP数据库查询中使用$ die($ sql)时,此人的ID为空。。。这是formsubmit.PHP中的相关代码
$quotetext = $_POST[\'quotetext\'];
    $id = $_POST[\'id\'];
    $team_id = $_GET[\'team_id\'];
    $sql = \"INSERT INTO quotes SET 
            speaker_id=\'$id\',quotetext=\'$quotetext\',game_id=2\";
    die($sql);
编辑:固定,归功于迈克尔。
<select name=\'name\'>
应该:
<select name=\'id\'>
    

解决方法

        在您的表单中,您使用的是
<select name=\'name\'>
,但是在您的PHP脚本中,您正在调用的是
$_POST[\'id\']
。 更改为:
<select name=\'id\'>
    ,        乍一看,它看起来像是错字。尝试:
$id = mysql_real_escape_string($_POST[\'name\']);
    ,        问题是您没有以\“ id \”作为名称的表单变量。在我看来,您只需将
<select name=\'name\'>
更改为
<select name=\'id\'>
。     ,        
$team_id = $_POST[\'name\']
您的选择元素名为\“ name \”,而表单为\“ POST \”。     ,        你需要改变
$id = $_POST[\'id\'];
$id = $_POST[\'name\']; // as name is what you gave your select element
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。