我正在尝试将来自html表单的值存储并通过JSON.stringify存储/发送到我的php文件,然后我的PHP文件将这些值写入DB。
到目前为止,我已经设法接收$ _POST值,但它是否在数组中,如下所示:
["Test","Test2","Test3","Test4"]
This is my PHP file now:
$array = $_POST["input"];
$i_ment = $array[0];
$odd_ment = $array[1];
$em_ment = $array[2];
$mobi_ment = $array[3];
mysql_query("INSERT INTO team VALUES ('$i_ment', '$odd_ment', '$em_ment', '$mobi_ment')")
但是db的值仍然在箭头中,如下所示:
["Test","Test2","Test3","Test4"],["Test","Test2","Test3","Test4"],["Test","Test2","Test3","Test4"],["Test","Test2","Test3","Test4"]
答案 0 :(得分:2)
接收JSON数据时,它只是一个字符串,而不是一个数组。
你必须先解码它才能真正使用它:
$array = json_decode($_POST["input"], true);
注意true,它告诉PHP创建一个关联数组而不是一个对象。
另外:你不应该使用mysql
- 函数,这些函数已被弃用且已删除PHP7;并且您的代码容易受到SQL注入的攻击。</ p>
mysqli_
和PDO
都提供了参数化查询,可以保护您免受此类攻击。