你输出的$result,有无值??
$sql="insert into software (PadPath,Category) values ('$txtPAD','$cboCata')";
这样行吗??
是不是你写插入的字符串有错误啊?
$sql="insert into software (PadPath,Category) values ('$txtPAD','$cboCata')";
这样行吗??
是不是你写插入的字符串有错误啊?
$Result无值》$sql="insert into software (PadPath,Category) values ('$txtPAD','$cboCata')";
这样试,行了一次,插入了一条记录,然后怎么也不能插入了。奇怪
但是整个长句子怎么都不工作了。
大家帮忙看看,谢谢了:
$sql="insert into software(PadPath,Category,SmallSizeScreenshot,Title,Version,OnelineDescription,FullDescription,FileLink,Filesize,ReleaseDate,Homepage,SupportEmail,FullSizeScreenshot,Price,Limitations,RegNowProductID,OrderPage,PutInCD,ID) VALUES('$txtPAD','$cboCata','$txtSScreen','$txtName','$txtVersion','$txtShortDesc','$txtLongDesc','$txtFile','$txtSize','$cboY'+'$cboM'+'$cboD','$txtHomepage','$txtEmail','$txtLScreen','$txtPrice','$txtLim','$txtRegnow','$txtOrderPage','$chkCD')";
取得了insert id为0,也没有任何出错提示。但是其中那一小部分可以正常工作。
php变量勿忘加上单引号‘,我当初学的时候出现过这样的问题
...
$sql="insert into software(PadPath,Category) VALUES('$p_txtPAD','$p_cboCata')";
...
'$cboY'+'$cboM'+'$cboD'
改作
'$cboY$cboM$cboD'
$id=mysql_insert_id();
echo($result);
echo($id);
>>>echo ($result['你要输出的列名']);
$id=mysql_insert_id();
echo($result);
echo($id);
>>> echo($result['你要输出的列名']);
or
$result=mysql_query($sql);
$Row=mysql_fetch_object($sql);
print $Row->数据库里的列名
你有一个字段属性为[唯一],但不是自动增长类型,可能默认值为0! 你的insert语句中在insert的时候并没有指定这个字段值,导致第一次insert正确,而第二次的时候发生MYSQL错误
如果要验证这个错误的话,很容易,最后你输出mysql_error();就知道是什么错了
输出出来看一下,要不然,copy了,到mysql里面去执行一下,就会提示你那里错了
1)sql中有数据库中不存在的字段;
2)插入的数据不合法,最常见的是引号问题,建议对插入的数据加上addslashes;
3)数据库中没有唯一标识,比如没有设置自增;
4)sql有语法错误;
5)插入的数据超出对应字段的范围,并出现错误;
6)数据库没有连接;
7)数据库损坏;
8)数据库中的表出现非法字段,如用保留字命名等;
9)其他错误;调试时最好把你的sql,echo 出来查看,确认无误之后再去掉。