Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.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数据库_Php_Mysql_Arrays - Fatal编程技术网

Php 使用数组更新MySql数据库

Php 使用数组更新MySql数据库,php,mysql,arrays,Php,Mysql,Arrays,好吧,我完全迷路了 我要做的是更新数据库中的一行 $sizes = array($_POST['size_0'], $_POST['size_1'], $_POST['size_2'], $_POST['size_3'], $_POST['size_4']); $sizes_upd = implode(", ", $sizes); mysqli_query($con, "U

好吧,我完全迷路了

我要做的是更新数据库中的一行

$sizes = array($_POST['size_0'],
               $_POST['size_1'],
               $_POST['size_2'],
               $_POST['size_3'],
               $_POST['size_4']);

$sizes_upd = implode(", ", $sizes);

mysqli_query($con, "UPDATE beds 
                    SET `Available Sizes` = '$sizes_upd' " .
                    "WHERE ID = '$prod_id' ");
我的问题是并非所有的
$\u POST[]
都包含数据。例如,假设
$size[0]&&&$size[1]
包含数据,则返回以下字符串:

value1、value2、,

如何防止这种情况发生,以便只有带有数据的
$\u POST[]
才会返回值?

使用清理数组

$sizes_upd = implode(", ", array_filter($sizes));
使用清理阵列

$sizes_upd = implode(", ", array_filter($sizes));

如果设置了数据,你应该在循环数组检查时生成查询,如果设置了数据,你的代码也容易受到mysql注入的攻击。如果设置了数据,你应该在循环数组检查时生成查询,如果设置了数据,你的代码也容易受到mysql注入+bobby表的攻击,哦,看在意大利面怪物的份上。。。在我按下这个该死的“发布你的答案”按钮之前,请停止窃取我所有的答案?xD仍然+1:P@YUNOWORK当前位置可能是他在事先读懂你的心思,你把它贴出来。我想是的。我现在很害怕。是时候我开始戴上这种铝帽子了,这样我就不会受到精神攻击了。太棒了!简单的解决方案。谢谢你!+bobby tables,噢,看在意大利面怪物的份上。。。在我按下这个该死的“发布你的答案”按钮之前,请停止窃取我所有的答案?xD仍然+1:P@YUNOWORK当前位置可能是他在事先读懂你的心思,你把它贴出来。我想是的。我现在很害怕。是时候我开始戴上这种铝帽子了,这样我就不会受到精神攻击了。太棒了!简单的解决方案。非常感谢。