私は仕事に関するいくつかの基本的な質問をしたフォームを手に入れて、その時に一緒にいた同僚。私がしたいのは、存在するすべての同僚がデータベースに行を入力していることです。他のすべての詳細はwork_id(人物の識別子)以外は同じです。私のコードは、以下の空workIDフィールド1つのフィールドが変更されたフォームデータから複数の行を入力する方法
<?php
require_once('includes/dbconnect.php');
$varWorkID = $_POST['workid'];
$varDate = $_POST['date'];
$varType = $_POST['type'];
$varSuper = $_POST['supervisor'];
$varReference = $_POST['reference'];
//Remove last part of array as extra 1 sent through by form
$workID = array_pop($varWorkID);
for ($i=0; $i < count($workID); $i++)
{
mysqli_query($conn,"INSERT INTO searches (workid,date,type,super,reference) VALUES('".$workID."','".$varDate."','".$varType."','".$varSuper."','".$varReference."')");
}
echo "Completed";
私はかなり近いんだけど、私はただの各作業IDのそれぞれに移入するworkidを取得する必要があると思うと、DBへの1行を提出しているようです従業員は存在します。
どのような援助が大幅にあなたがループfor ($i=0; $i < count($workID); $i++)
に入る前に、ここでの問題は、あなたが$workID = array_pop($varWorkID);
を呼んでいるということですので、PHPインタプリタは、あなただけは、1つの要素の長さを反復処理したいと考えて
このコードは、SQLインジェクションに対して非常に脆弱です。準備文を使用することを検討してください。 –
'var_dump($ varWorkID);'を実行し、あなたが得ているものを見てください。 –
'0 '=> string(5)" AB123 "[1] =>" CD456 "[2] =>文字列(0)" "} – JJMillwall