不好意思
上面的程序漏掉了一段,以下是完整的:
错误信息:
Warning: ociexecute(): OCIStmtExecute: ORA-00917: missing comma in /home/yifuhu/public_html/update.php on line 33
bool(false) Unable to connect:Code:
<?php
$connection = OCILogon ("yifuhu", "yifu!(82", "SSID");if (!$connection){
echo "Unable to connect:" . var_dump( OCIError() );
exit;
}
echo ("Connetion is "."$connection"."<br>");
$now_date=date("d-m-Y.");$name=$HTTP_POST_VARS['name'];
$type=$HTTP_POST_VARS['type'];
$os=$HTTP_POST_VARS['os'];
$size=$HTTP_POST_VARS['size'];
$developer=$HTTP_POST_VARS['developer'];
$homepage=$HTTP_POST_VARS['homepage'];
$description=$HTTP_POST_VARS['description'];$query = "INSERT INTO yifuhu.Products ".
"VALUES (".
"P_ID.NEXTVAL ".
"$name, $type, $os, $size, $developer, $homepage, $description,".
"to_date($now_date, 'dd/mm/yyyy')".
");";
$cursor = OCIParse ($connection, $query);
if(!$cursor) {
echo "Unable to connect:" . var_dump( OCIError() );
exit;
}$result=OCIExecute($cursor, OCI_DEFAULT); //问题就在这一行(33)if(!$result) {
echo "Unable to connect:" . var_dump( OCIError() );
exit;
}$committed = OCICommit ($connection);
if(!$committed){
echo "Unable to connect:" . var_dump( OCIError() );
}OCILogoff ($connection);
?>
上面的程序漏掉了一段,以下是完整的:
错误信息:
Warning: ociexecute(): OCIStmtExecute: ORA-00917: missing comma in /home/yifuhu/public_html/update.php on line 33
bool(false) Unable to connect:Code:
<?php
$connection = OCILogon ("yifuhu", "yifu!(82", "SSID");if (!$connection){
echo "Unable to connect:" . var_dump( OCIError() );
exit;
}
echo ("Connetion is "."$connection"."<br>");
$now_date=date("d-m-Y.");$name=$HTTP_POST_VARS['name'];
$type=$HTTP_POST_VARS['type'];
$os=$HTTP_POST_VARS['os'];
$size=$HTTP_POST_VARS['size'];
$developer=$HTTP_POST_VARS['developer'];
$homepage=$HTTP_POST_VARS['homepage'];
$description=$HTTP_POST_VARS['description'];$query = "INSERT INTO yifuhu.Products ".
"VALUES (".
"P_ID.NEXTVAL ".
"$name, $type, $os, $size, $developer, $homepage, $description,".
"to_date($now_date, 'dd/mm/yyyy')".
");";
$cursor = OCIParse ($connection, $query);
if(!$cursor) {
echo "Unable to connect:" . var_dump( OCIError() );
exit;
}$result=OCIExecute($cursor, OCI_DEFAULT); //问题就在这一行(33)if(!$result) {
echo "Unable to connect:" . var_dump( OCIError() );
exit;
}$committed = OCICommit ($connection);
if(!$committed){
echo "Unable to connect:" . var_dump( OCIError() );
}OCILogoff ($connection);
?>
$query语句:
$query = "INSERT INTO yifuhu.Products ".
"VALUES (".
"\"P_ID.NEXTVAL ,".
"$name, $type, $os, $size, $developer, $homepage, $description,".
"to_date($now_date, 'dd/mm/yyyy')".
\");";
应该是27行 $cursor = OCIParse ($connection, $query);里$query的问题吧
$query语句:
$query = "INSERT INTO yifuhu.Products ".
"VALUES (".
"\"P_ID.NEXTVAL ,".
"$name, $type, $os, $size, $developer, $homepage, $description,".
"to_date($now_date, 'dd/mm/yyyy')".
"\"");";
总之,如果字段类型是字符型的就加‘’
还有如果不行的话你可以加一段
<?if(!$result) {
msgbox("sql:".$query);
}
function msgbox($msg)
{?>
<script language="javascript">
alert($msg);
</script>
<?}?>看看sql错在哪里
1. zeaz() 兄,提到过的,字段要加‘’oracle才能正确的识别。
2. 还有就是不知道是oracle9还是我的PHP编译器会自动在每一句sql语句的结尾加上“;”所以我的程序总是有错误。
好啦,现在问题是解决了,感谢各位帮忙!谢谢!
发分!!!