Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.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/1/php/284.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
如何从Java插入$\u POST_Java_Php_Sql - Fatal编程技术网

如何从Java插入$\u POST

如何从Java插入$\u POST,java,php,sql,Java,Php,Sql,我正在尝试将$\u POST数组插入mysql数据库。foreach可以工作,但并非所有值都插入到下图所示的同一行中 这是我用来将数组插入数据库的foreach: if($_POST) { // con->insert is my mysql function to insert the values foreach ($_POST as $key => $value) { if($con->insert('test',$key, $valu

我正在尝试将$\u POST数组插入mysql数据库。foreach可以工作,但并非所有值都插入到下图所示的同一行中

这是我用来将数组插入数据库的foreach:

if($_POST)
{

    // con->insert is my mysql function to insert the values
    foreach ($_POST as $key => $value) {
        if($con->insert('test',$key, $value)==true)
        {
            echo 'Het werkt!!!';
        }
    }

}
编辑 这是con函数

public function insert($table,$row,$value) {
        $query = mysqli_query($this->connect, "INSERT INTO `$table` (`$row`) VALUES ('$value')");

        if ($query == true)
        {
            return true;
        }
        else{
            return false;
        }
    }
我想从post中收集变量,然后将它们放在表的同一行的数据库中

如何获取同一行上的值?
提前感谢

由于每个变量都要进行一次插入,因此这些值会进入不同的行

您可能希望从$\u POST收集所有变量,并在一次插入中将它们添加到数据库中

首先,将insert子句更改如下:

public function insert_multi($table, $items) {
    $query = mysqli_query($this->connect,
        "INSERT INTO `$table` (`firstKeyName`, `secondKeyName`) ".
        "VALUES ('".$items['firstKeyName']."', '".$items['secondKeyName']."')");

        if ($query == true)
        {
            return true;
        }
        else{
            return false;
        }
    }
然后使用所有参数仅调用一次:

$con->insert_multi('test', $_POST);

这些值进入不同的行,因为每个变量都要执行一次插入

您可能希望从$\u POST收集所有变量,并在一次插入中将它们添加到数据库中

首先,将insert子句更改如下:

public function insert_multi($table, $items) {
    $query = mysqli_query($this->connect,
        "INSERT INTO `$table` (`firstKeyName`, `secondKeyName`) ".
        "VALUES ('".$items['firstKeyName']."', '".$items['secondKeyName']."')");

        if ($query == true)
        {
            return true;
        }
        else{
            return false;
        }
    }
然后使用所有参数仅调用一次:

$con->insert_multi('test', $_POST);

最终,您将为每个值执行一个insert命令,而您应该为每个键和值对执行一个insert命令

您可以尝试的一个选项是将$\u POST数组作为JSON数据插入

<?php
$db = mysqli_connect(...);
foreach($_POST as $key => $value) {
    mysqli_query($db, "INSERT into `table` VALUES ($key, $value)");
}

最终,您要为每个值执行一个insert命令,而您应该为每个键和值对执行一个insert命令

您可以尝试的一个选项是将$\u POST数组作为JSON数据插入

<?php
$db = mysqli_connect(...);
foreach($_POST as $key => $value) {
    mysqli_query($db, "INSERT into `table` VALUES ($key, $value)");
}

插入
$table
$row
)值(“$value”)

通常情况下(如果您正在编写的不是phpMySqlAdmin),您的应用程序知道给定表的哪些列可用,并且您完全需要验证$row的值,否则SQL注入的可能性非常大

如果你有一个列名列表,你可以

INSERT INTO test (Col1, Col2, Col3) VALUES (?, ?, ?)
你可以给它数组

$_POST["COL1"], $_POST["COL2"], $_POST["COL3"]
插入
$table
$row
)值(“$value”)

通常情况下(如果您正在编写的不是phpMySqlAdmin),您的应用程序知道给定表的哪些列可用,并且您完全需要验证$row的值,否则SQL注入的可能性非常大

如果你有一个列名列表,你可以

INSERT INTO test (Col1, Col2, Col3) VALUES (?, ?, ?)
你可以给它数组

$_POST["COL1"], $_POST["COL2"], $_POST["COL3"]

Java在哪里发挥作用?什么样的对象是
$con
Java@jsalonen我已经将con函数放在edit中,Java在哪里发挥作用?什么类型的对象是
$con
?@Thilo Im从中发布值Java@jsalonen我已经把con函数放在edit中了我想这样做,但是我怎么能这样做呢我想这么做,但我该怎么做呢?