我想将数据插入postgresql数据库,其中包括单选按钮和dropdwn框。我尝试了3种不同的插入查询。
1)
$query = sprintf("INSERT INTO onf VALUES('%s','%s','%s','%s','%s','%s','%d')",$_REQUEST['title'],$_REQUEST['name'],$_REQUEST['district'],$_REQUEST['rurban'],$_REQUEST['taluk'],$_REQUEST['village'],$_REQUEST['wardno']);
2)
$qry="INSERT INTO onf(title, name, district,rurban,taluk,village,wardno) VALUES ('$tile', '$name', '$district','$rurban','$taluk','$village','$wardno')";
3)
$qy="INSERT INTO onf(title, name, district,rurban,taluk,village,wardno) VALUES (('$_POST[title]','gen','$_POST[gen]),'$_POST[name]','$_POST[district]','$_POST[rurban]','$_POST[taluk]','$_POST[village]','$_POST[wardno]')";
$res = pg_query($db,$qy);
我的问题是在第一个查询oly名称单独插入,在第二个,第三个没有记录插入。 Y下拉列表和单选按钮没有插入数据库? Tanx提前..
答案 0 :(得分:0)
可能只是因为这3个都不是正确的PHP代码。
查询1: 不要使用$ _REQUEST。使用$ _POST。
查询2: 除非你打开register_globals,我 SERIOUSLY 希望你没有,你的vars($ tile,$ name等)将不包含表单提交的信息。同样,你想使用$ _POST。
查询3:
您的变量未正确转义。一般来说,如果你不太熟悉PHP中的字符串连接,我建议不要将变量嵌入到双引号字符串中。使用单引号字符串并通过断开字符串并与.
连接来构建它们。
现在,我觉得你的第二个查询是最接近你想要的,所以试试这个:
$qry = '
INSERT INTO onf (
title,
name,
district,
rurban,
taluk,
village,
wardno
) VALUES (
"'.$_POST['tile'].'",
"'.$_POST['name'].'",
"'.$_POST['district'].'",
"'.$_POST['rurban'].'",
"'.$_POST['taluk'].'",
"'.$_POST['village'].'",
"'.$_POST['wardno'].'"
);
';