php – 从mysqli_query获取成功/失败响应

我正在从用户收集信息,然后将它们添加到表中.

$insert = "INSERT INTO jos_activeagents (RINGPHONE, AGENTUID, FNAME, LNAME) VALUES ('(618) 717-2054','".$result['AGTBRDIDMM']."','".$result['AGTFNAME']."','".$result['AGTLNAME']."')";

$set = MysqLi_query($link,$insert);

AGENTUID是一个独特的钥匙.如果用户尝试使用重复的唯一键提交,我会收到错误(当然).

现在,我将如何知道是否以及何时发生错误然后将响应放回页面?我知道MysqLi_get_warnings(),但PHP手册没有显示任何示例.

我还尝试先在表格中查找AGENTUID:

$check = "SELECT * FROM jos_activeagents WHERE AGENTUID = '".$agt."'";

$runcheck = MysqLi_query($link,$check);

$rescheck = MysqLi_fetch_assoc($runcheck);

if($rescheck != null){

    echo 'This Agent ID is already enrolled.'

}

但这似乎很草率.这有更好的方法吗?

解决方法:

您可以使用mysqli_error()查看是否发生了错误

if (MysqLi_error($runcheck ))
{
   // an error eoccurred
}

在您的特定示例中,您最好在执行插入之前检查行是否存在.你的例子很接近,但最好使用mysqli_num_rows()

$check = "SELECT * FROM jos_activeagents WHERE AGENTUID = '".$agt."'";
$runcheck = MysqLi_query($link,$check);
if (MysqLi_num_rows($runcheck) > 0)
{
    // username in use
}

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...