mySQL记录随机不存储到数据库


mySQL record randomly not storing to dbase

我不知道该如何处理这个问题。我有一个mySQL数据库,我使用PHP修改记录等通过我的web应用程序。经过相当一些调试,mySQL记录似乎只是随机不被存储/更新,我看不出为什么。

对于某些后台,web应用程序做两件事-更新用户浏览器中显示刚刚提交的文本,然后触发php脚本将文本存储到mySQL记录中。更新,但是将记录插入到数据库中似乎每5次事件中有2次失败(大致)。

对这个有什么想法吗?

function submit_wallpost($wallpost){
$userid = $_SESSION['SESS_MEMBER_ID'];
include './mySQL_access.php';
mysql_connect("$host", "$user", "$pass")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");
mysql_query("INSERT INTO wall (clusterID, userID, postContent) VALUES (111, '$userid', '$wallpost')");
mysql_close();
}

代码看起来不错,除了您应该使用PDO或mysqli来连接,因为mysql_functions已弃用。无论如何,一些调试可能会对您有所帮助。

$query = mysql_query("INSERT INTO wall (clusterID, userID, postContent) VALUES (111, '$userid', '$wallpost')");
if (!$query) die(mysql_error());

可能对你有帮助。

您的代码看起来很好。您很可能需要检查错误发生的位置。

1。检查要从查询中插入的值。通过首先定义查询,尝试将查询语句与执行分开。这将是一个很大的检查使用echo提交的值,你也可以尝试在你的数据库sql

中运行它。
 $sql="INSERT INTO wall (clusterID, userID, postContent) VALUES (111, '$userid', '$wallpost')"

2。尝试检查您的$sql语句执行是否失败。这个想法将返回一个echo语句。

 if($result){
      echo 'Success';
   }
   else{
    echo 'Failed';
 }

进入这些,我们将有一个大致的想法,代码停止在哪里,使查询失败