mysql服务器由于在php中存储API响应而消失
我感觉mysql服务器已经消失了,通过php代码在mysql数据库中存储API结果如下mysql服务器由于在php中存储API响应而消失,php,mysql,Php,Mysql,我感觉mysql服务器已经消失了,通过php代码在mysql数据库中存储API结果如下 $api_response = sendmsg($group_detail['cell_no'], $SMS); //function to execute API //update sms sent record $sql = "INSERT INTO sms_sent_record (record_id, api_response) VALUE
$api_response = sendmsg($group_detail['cell_no'], $SMS); //function to execute API
//update sms sent record
$sql = "INSERT INTO sms_sent_record (record_id, api_response)
VALUES (NULL, '$api_response')";
$result = mysql_query($sql) or die('Error, updating sms & group count
in sms_sent_count failed : ' . mysql_error());
我尝试过许多其他选项,比如将api响应存储在数组中,然后将其存储在mysql表中,但无论如何,它都会抛出相同的错误。服务器将不执行此错误后函数中的其他代码
我认为这是由于mysql中api响应延迟和超时问题造成的
是否有任何方法可以避免此错误并以正确的方式存储结果。但我怀疑您的问题是,您在API调用发送SMS之前打开了与数据库的连接?API调用会导致服务器在运行插入之前终止您的连接
尝试在INSERT语句之前将open db连接移动到:
$api_response = sendmsg($group_detail['cell_no'], $SMS); //function to execute API
// open connection here
$sql = "INSERT INTO sms_sent_record (record_id, api_response)
VALUES (NULL, '$api_response')";
$result = mysql_query($sql) or die('Error, updating sms & group count
in sms_sent_count failed : ' . mysql_error());
检查设置的值是否为
服务器在服务器上等待活动的秒数
关闭连接之前,请先进行非交互连接
如果将此值设置得很低,服务器将在打开连接和运行查询之间超时连接。如果忽略sendmsg并执行以下操作,是否有效:
$api_response = 'test';//sendmsg($group_detail['cell_no'], $SMS); //function to execute API
如果是这样,sendmsg在任何时候都会使用某种mysql连接吗?
如果是,您可能希望存储第一次连接到数据库时的链接并重用它
$link=mysql_connect();
..
..
mysql_query($sql,$link);
MYSQL服务器消失是一个实际的错误。这可能是最没有帮助的一个,但仍然是一个错误。但是sql只记录前两个响应。。。其余的代码根本不运行,$api\u响应通常是什么样子的-您可能还希望使用“$api\u response=mysql\u real\u escape\u string$api\u response;”对其进行转义