在php中用insert into向表中插入数据,为何不行? 你输出的$result,有无值??$sql="insert into software (PadPath,Category) values ('$txtPAD','$cboCata')";这样行吗??是不是你写插入的字符串有错误啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你插入的值是不是用表单传过来的?如果是,应该用$_POST[] 是用表单的post方法传过来了,但是我用了$_POST[]也不行,再试一次看看》你输出的$result,有无值??$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,也没有任何出错提示。但是其中那一小部分可以正常工作。 VALUES('$txtPAD','$cboCata');php变量勿忘加上单引号‘,我当初学的时候出现过这样的问题 尝试以下语句...import_request_variables('p','p_');...$sql="insert into software(PadPath,Category) VALUES('$p_txtPAD','$p_cboCata')"; ... 在PHP.INI里面把register_globals = On 这个不对'$cboY'+'$cboM'+'$cboD'改作'$cboY$cboM$cboD' $result=mysql_query($sql); $id=mysql_insert_id(); echo($result); echo($id);>>>echo ($result['你要输出的列名']); $result=mysql_query($sql); $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();就知道是什么错了 你用echo $sql;输出出来看一下,要不然,copy了,到mysql里面去执行一下,就会提示你那里错了 通常情况下出现下列情况会导致插入失败:1)sql中有数据库中不存在的字段;2)插入的数据不合法,最常见的是引号问题,建议对插入的数据加上addslashes;3)数据库中没有唯一标识,比如没有设置自增;4)sql有语法错误;5)插入的数据超出对应字段的范围,并出现错误;6)数据库没有连接;7)数据库损坏;8)数据库中的表出现非法字段,如用保留字命名等;9)其他错误;调试时最好把你的sql,echo 出来查看,确认无误之后再去掉。 这个问题你帮我提问,我认为解决问题的关键是,怎样将字符串的值转换成数据库中的 Int 的类型。在Php中我不知道怎么做到这一步。 如何计算一个数组的内存? eclipsephp 怎么自动提示html标签? 求ajax搜索提示的查询语句 这个站用的是什么技术? 本人自学php,遇到递归算法问题,请各位高手帮忙解答下。 紧急请教!提交订单读入数据库为什么这么慢 iis怎么安装php支持? 最后一晚,急问:如何把数据库中字段link和links中这样的内容给替换掉? 一个延迟出现的问题 用php如何判断一个页面是不是新生成的。 如何写"hello world",新手 用getenv("REMOTE_ADDR")得到的ip地址是什么数据类型的
$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 出来查看,确认无误之后再去掉。