Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
postgresql和插入变量_Sql_Postgresql_Insert_Postgresql 9.2 - Fatal编程技术网

postgresql和插入变量

postgresql和插入变量,sql,postgresql,insert,postgresql-9.2,Sql,Postgresql,Insert,Postgresql 9.2,我离得很近,但被卡住了。我从drupal中提取用户名并将其存储在名为$username的变量中,我想将其存储在名为username的列中。然而,下面的代码抛出了一个错误 $sql = "INSERT INTO sheet_tbl (site_id, user_id, eventdate, eventtime, username) VALUES ('$_POST[site_id]','$_POST[user_id]','$_POST[eventdate]','$_POST[even

我离得很近,但被卡住了。我从drupal中提取用户名并将其存储在名为$username的变量中,我想将其存储在名为username的列中。然而,下面的代码抛出了一个错误

        $sql = "INSERT INTO sheet_tbl (site_id, user_id, eventdate, eventtime, username) VALUES ('$_POST[site_id]','$_POST[user_id]','$_POST[eventdate]','$_POST[eventtime]',$username)";
错误

我使用以下方法提取用户名:

 User Name: <?php 
 global $user;
 echo $user->name;
 $username = $user->name;
 ?>
用户名:

如果我回显这个变量,我会得到结果=admin

如果不查看
echo$sql的输出,我就不确定了
,但我想问题在于访问
$POST
数组的方式

试试这个:

    $sql = "INSERT INTO sheet_tbl (site_id, user_id, eventdate, eventtime, \"username\")"
          ." VALUES ('$_POST[site_id]', "
          ."         '$_POST[user_id]',"
          ."         '$_POST[eventdate]',"
          ."         '$_POST[eventtime]',"
          ."          '$username')";

编辑:更正语法

您没有将
用户名
放在引号中。替换

,$username)";


顺便说一句,您不应该在SQL语句中输入未经转换的用户输入。这可能导致SQL注入。请参见

Try
echo$sql在分配字符串并让我们知道outputRecord addedINSERT到sheet_tbl(站点id、用户id、事件日期、事件时间、用户名)值('14'、'1'、'29/06/2012'、'20:44')之后,这是我问题@OscarPérezSee我的答案中代码的结果。问题是
,)
,因为您的用户名变量为空警告:pg_query()[function.pg query]:查询失败:错误:数组值必须以“{”开头或第33行/var/www/html/drupal1/includes/common.inc(1743):eval()”d代码中字符150处的维度信息。我刚刚尝试了这个$sql=“INSERT INTO sheet\u tbl(site_id,user_id,eventdate,eventtime,username)值(“$”POST[site_id],“$”POST[user_id],“$”POST[eventdate],“$”POST[eventtime],“username=”)“我更改了语法…你能试试吗?警告:pg_query()[function.pg query]:查询失败:错误:列“username”在第31行代码/var/www/html/drupal1/includes/common.inc(1743):eval()中的字符113处不存在。尽管我知道该列确实存在,因为我可以看到它
,$username)";
,'$username')";