首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mySQL插入如果id存在其他发送错误给用户,我可以使用什么方法?

mySQL插入如果id存在其他发送错误给用户,我可以使用什么方法?
EN

Stack Overflow用户
提问于 2014-06-18 11:59:13
回答 6查看 59关注 0票数 0

我喜欢将代码稍微修改一下,如果int $itemID不存在,则用户应该触发$retval die,如果$itemID存在,则用户应该继续对db进行更新。

哪种方法最合适?

代码:

代码语言:javascript
复制
$upd = "UPDATE booking SET userID ='$userID' WHERE itemID ='$itemID'";

$retval = mysql_query($upd, $con);
if(!$retval){
   die('Could not update data: '.mysql_error());
   } 
echo "Updated data successfully\n";
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-06-18 12:04:51

您应该检查受影响的行数,如下所示:

代码语言:javascript
复制
$upd = "UPDATE booking SET userID ='$userID' WHERE itemID ='$itemID'";

$retval = mysql_query($upd, $con);

if(!$retval || 0 === mysql_affected_rows()) {
   die('Could not update data: '.mysql_error());
}

echo "Updated data successfully\n";

此外,正如注释中所述,您应该使用mysqli_甚至是PDO,而不是mysql_,因为后者已经严重过时。

票数 0
EN

Stack Overflow用户

发布于 2014-06-18 12:05:06

您可以使用mysql

PHP用户手册中的使用示例:

/*更新记录*/ mysql_query(“更新mytable集used=1,其中id < 10");printf (”更新记录:%d\n",mysql_affected_rows();mysql_query(“提交”);

请注意,从php5.5.0开始,mysql_*方法将被废弃。或者,您可以使用PDO prepared statements

票数 1
EN

Stack Overflow用户

发布于 2014-06-18 12:05:46

这个怎么样?

代码语言:javascript
复制
$upd = "UPDATE booking SET userID ='$userID' WHERE itemID ='$itemID'";

if( isset($itemID) && $retval = mysql_query($upd, $con) ){
    echo "Updated data successfully\n";
}
else {
    die('Could not update data: '.mysql_error());
}

(是的,谨慎地更新到mysqli_*。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24285017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档