使用php和access数据库插入记录-获取;odbc_exec()的参数计数错误;
使用php和access数据库插入记录-获取“odbc_exec()的错误参数计数”一切正常,但我无法将其插入数据库使用php和access数据库插入记录-获取;odbc_exec()的参数计数错误;,php,ms-access,sql-insert,Php,Ms Access,Sql Insert,使用php和access数据库插入记录-获取“odbc_exec()的错误参数计数”一切正常,但我无法将其插入数据库 $R1=rand(1,20); $db=odbc_connect('Eightball','',''); $sql = "SELECT * FROM theAnswers"; $sql .= " WHERE id = " . $R1; $rs=odbc_exec($db,$sql); while (odbc_fetch_row($rs)) { $Final
$R1=rand(1,20);
$db=odbc_connect('Eightball','','');
$sql = "SELECT * FROM theAnswers";
$sql .= " WHERE id = " . $R1;
$rs=odbc_exec($db,$sql);
while (odbc_fetch_row($rs))
{
$FinalAnswer=odbc_result($rs,"Answer");
$newdate = date('M j, Y');
$newQuestion = $_POST["Question"];
if(isset($_SERVER['HTTP_REFERER'])) {
$Thereferrer=$_SERVER['HTTP_REFERER'];
}
$theIPAddress=$_SERVER['REMOTE_ADDR'];
echo $theIPAddress;
echo $Thereferrer;
echo $newQuestion;
echo $FinalAnswer;
echo $newdate;
}
$sql = "INSERT INTO theQuestions (ipaddress, referrer, Question, Answer, theDate) VALUES ('$theIPAddress', '$Thereferrer', '$newQuestion', '$FinalAnswer', newdate)";
$rs=odbc_exec($db,$sql);
$result = odbc_exec($sql);
if (!$result) {exit('Execution failed!');}
最后一行
$result = odbc_exec($sql);
就是给出“错误参数计数”错误的那个。第二个电话也是无关的
我还担心日期格式,但我在我的Windows服务器上试用了它,下面的方法对我很有效
<?php
$db = odbc_connect('db1', '', '');
$dateValue = date('M j, Y');
$sql =
"INSERT INTO phpTest (TextCol, DateCol) " .
"VALUES ('testing', '" . $dateValue . "')";
echo $sql . "\r\n";
odbc_exec($db, $sql);
echo "Done.\r\n";
…并且该行确实已插入到表中
不过,
date('Y-m-d')
将是一个更安全的选择。INSERT语句中不需要newdate变量上的$吗?我确信INSERT语句的date字段有问题。在access中,它被设置为日期/时间数据类型try$newdate,$newdate'请参见:这是针对Delphi的,但sames适用于PHPI remove ipaddress、referrer及其值并运行查询,但没有更新,因为数据类型设置为“allow zero length no”
C:\__tmp>\php\php odbcTest.php
INSERT INTO phpTest (TextCol, DateCol) VALUES ('testing', 'Apr 10, 2013')
Done.