Php 为什么我看到零被插入MySQL数据库?
在我的MySQL数据库中,我看到在正确和预期的插入之前,将空白记录插入到我的messages表中:Php 为什么我看到零被插入MySQL数据库?,php,Php,在我的MySQL数据库中,我看到在正确和预期的插入之前,将空白记录插入到我的messages表中: id, user_id, message, rating 43, 0, 0, 0 44 23498745, test, 0 id为43的记录不应该存在,因为某些原因,它插入了零。我不知道为什么,因为我的if条件是检查$message是否有某种值 if(isset($message) && !empty($message) && !is_NULL($message)
id, user_id, message, rating
43, 0, 0, 0
44 23498745, test, 0
id为43的记录不应该存在,因为某些原因,它插入了零。我不知道为什么,因为我的if条件是检查$message
是否有某种值
if(isset($message) && !empty($message) && !is_NULL($message)){
$data['text'] = 'Your message has been saved';
$stmt = $pdo->query('INSERT INTO messages (user_id, message, rating) VALUES (?, ?, ?)');
$stmt->execute([$chat_id, $message, 0]);
Request::sendMessage($data);
}
甚至把退出调用sendMessage()
后的code>语句没有任何作用。我看不出这有什么问题
如何防止插入这些空白记录?在您的代码中是否有其他位置可以运行插入消息
?在您的情况下,您正在检查3个选项。看到你的消息是0,所以3是通过真的,它插入到数据库的日期。如果(isset($message)&&&!empty($message)&&!is_NULL($message)&&$message!=0)@jualahmed 0被认为是空的,则再添加一个类似于此的值。OP实际上可以用if(!empty($message))
替换所有3个检查,这是一样的。