在文件之间传递PHP变量并将变量插入SQL表

时间:2014-12-01 06:02:14

标签: php html mysql

我有一个PHP文件,通过$ _GET通过URL获取值。 代码是     $ thisID = $ _GET ['blog_id'];

现在在同一个文件中,我正在收集用户的条目并将其通过HTML表单传递给一个文件,该文件将数据输入到SQL表中。 我还想将blog_id输入数据库。

这是我正在使用的代码:

<form action="comment.php" method="POST">
Your name: <input type="text" name="display_name" size="25"><br>
Your email: <input type="text" name="email" size="30"><br>
Your comment: <input type="text" name="comment" size="40"><br>
<input type="hidden" name="blog_id"
value="<?php echo $_POST['$thisID']; ?>">
<input type="submit" value="Submit">

这就是我将值输入SQL表的方法

 $command = "insert into $table_name
values('','".$db->real_escape_string($_POST['comment'])."',
'".$db->real_escape_string($_POST['blog_id'])."',        
'".$db->real_escape_string($_POST['display_name'])."',
'".$db->real_escape_string($_POST['email'])."',now()
);";

代码被执行,我没有得到任何错误但是没有输入变量(blog_id),数据库中的字段为空。正确输入所有其他字段。 甚至可以交出这样的PHP变量吗?

3 个答案:

答案 0 :(得分:0)

<input type="hidden" name="blog_id" value="<?php echo $thisID; ?>">

因为您已将get值存储在变量$thisID

如果您想发送获取数据,请使用

<input type="hidden" name="blog_id" value="<?php echo $_GET['blog_id']; ?>">

答案 1 :(得分:0)

我的第一个猜测是$ command查询。你的模特和控制器非常混杂。我将POST设置为变量,然后转义该变量,然后将该变量提供给查询。此外,您说您正在使用GET,但您的$命令查询显示POST。我会重写查询,以便在将变量提供给$ command查询之前进行操作,然后报告进度。

答案 2 :(得分:0)

是的,你说你正在使用$_GET,但你写了$_POST['$thisID'];

  1. 确保$_POST['$thisID'];是正确的值。只是回声,看看会出现什么。

    $ _ POST [ '$ thisID'];

  2. 如果值显示出来,那么你应该用字符串测试输入标签要通过表格发送

  3. 如果问题仍然存在,您应检查其他输入标记可能使用的名称或ID,如果您的ID或名称相同,则无法使用。