Php 尝试将数据插入表时出错
我在php文件中有以下代码:Php 尝试将数据插入表时出错,php,mysql,Php,Mysql,我在php文件中有以下代码: $query="INSERT INTO tec (name) VALUES ('$name')"; $done=mysql_query($query); if($done == 'null') { $output = json_encode(array('type'=>'error', 'message' => $mess['error'].$done.'</b></div>')); } else { $outpu
$query="INSERT INTO tec (name) VALUES ('$name')";
$done=mysql_query($query);
if($done == 'null') {
$output = json_encode(array('type'=>'error', 'message' => $mess['error'].$done.'</b></div>'));
} else {
$output = json_encode(array('type'=>'success', 'message' => $mess['success']));
}
或者有没有办法解决这个问题?根据mysql\u查询函数的php文档 对于返回resultset的SELECT、SHOW、DESCRIBLE、EXPLAIN和其他语句,mysql_query()在成功时返回资源,在出错时返回FALSE 对于其他类型的SQL语句,如INSERT、UPDATE、DELETE、DROP等,mysql_query()成功时返回TRUE,错误时返回FALSE 所以,搜索它是真是假
if ($done == TRUE) {
根据mysql_查询函数的php文档 对于返回resultset的SELECT、SHOW、DESCRIBLE、EXPLAIN和其他语句,mysql_query()在成功时返回资源,在出错时返回FALSE 对于其他类型的SQL语句,如INSERT、UPDATE、DELETE、DROP等,mysql_query()成功时返回TRUE,错误时返回FALSE 所以,搜索它是真是假
if ($done == TRUE) {
表示mysql\u查询
在出错时返回FALSE
。这意味着不必测试它是否等于'null'
(一个比较为TRUE
的字符串),您可以直接测试布尔值:
if($done){
//OK
}else{
//NOT OK
}
如果我没有提到mysql.*
函数系列已被弃用,不安全,将从PHP的未来版本中删除,,那我就是失职了!相反,我可以亲自推荐,我已经成功地使用了它。说mysql\u查询
在出错时返回FALSE
。这意味着不必测试它是否等于'null'
(一个比较为TRUE
的字符串),您可以直接测试布尔值:
if($done){
//OK
}else{
//NOT OK
}
如果我没有提到
mysql.*
函数系列已被弃用,不安全,将从PHP的未来版本中删除,,那我就是失职了!相反,我可以个人推荐,我已经用过了,并且取得了很大的成功。嗨,我想你应该用布尔值
试试这个(你最好用mysqli代替mysql)
if(!done)
{
// something wrong
echo mysql..
}
else
{
// everything works fine....
}
嗨,我想你应该用布尔运算 试试这个(你最好用mysqli代替mysql)
if(!done)
{
// something wrong
echo mysql..
}
else
{
// everything works fine....
}
错误捕获必须如下所示:
if($done === false){
//NOT OK
}else{
//OK
}
但正如@John Conde所提到的,不要使用mysql,因为它已被弃用。错误捕获必须如下所示:
if($done === false){
//NOT OK
}else{
//OK
}
但正如@John Conde所提到的,不要使用mysql,因为它已被弃用。。它们不再被维护。请参阅?改为了解,并使用or-将帮助您决定哪一个对您最合适。它们不再被维护。请参阅?改为了解,并使用or-将帮助您决定哪一个对您最合适。@Juanky Aweso我!你能接受我的回答吗?那我就可以得到奇怪的上瘾点数奖励。@Juanky真棒!你能接受我的回答吗?那我就可以得到奇怪的上瘾点数奖励。