Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果mysql与POST不存在,则插入行_Php_Android_Exists - Fatal编程技术网

Php 如果mysql与POST不存在,则插入行

Php 如果mysql与POST不存在,则插入行,php,android,exists,Php,Android,Exists,我已经阅读了前面问题中的所有信息,我也阅读了,但不幸的是,我没有得到肯定的回答。 我想把安卓发布的信息存储到数据库中 前提是该信息尚不可用 这是我的php代码,从Android发送信息没有问题: 您可以做的一件事是确保签出页面表中有主键或唯一键,而不是执行if-else,而是执行try/catch。您的代码每次都会执行,但每个代码只插入一条记录,例如(假设代码是PK)。 另一种方法是在插入之前运行查询,检查是否已插入此记录,并且仅在查询未返回结果时执行插入。我只是在重复密钥更新时添加。 这就是

我已经阅读了前面问题中的所有信息,我也阅读了,但不幸的是,我没有得到肯定的回答。 我想把安卓发布的信息存储到数据库中 前提是该信息尚不可用 这是我的php代码,从Android发送信息没有问题:


您可以做的一件事是确保签出页面表中有主键或唯一键,而不是执行if-else,而是执行try/catch。您的代码每次都会执行,但每个代码只插入一条记录,例如(假设代码是PK)。

另一种方法是在插入之前运行查询,检查是否已插入此记录,并且仅在查询未返回结果时执行插入。

我只是在重复密钥更新时添加。 这就是解决方案:

$strSQL = " INSERT INTO page (id , code , username ) VALUES('$id' , '$code' , '$username' ) ON DUPLICATE KEY UPDATE code='$code')";

谢谢大家的帮助

你能再描述一下这个问题吗?您当前的代码是做什么的?它是否插入重复记录?它不起作用吗?有什么错误吗?@Oper,你能解释一下你遇到的问题吗?如果希望该行在数据库中唯一,请确保输入的键之一唯一。您的代码容易受到攻击。您应该通过或使用带绑定参数的准备语句。有一些很好的例子。还有一些建议——不要对布尔字段使用像
TRUE
FALSE
这样的字符串。而是使用在布尔上下文中正确计算的值,如0和1。“当尚未添加行时”是指具有相同值的整行吗?或者只是该代码的任何一行?永远不要依靠选择的结果来确定是否可以随后插入。