-1
配列を介してデータベースに100以上の入力フィールドを挿入しようとしています。主な問題です(これは、これを行う最も安全な方法ではありませんが、これは進行中の作業です)。配列がSQL文に挿入されると、余分な "、"がVALUES()セクションの末尾に配置しますが、配置する変数はありません。つまり、最後のPOST変数が挿入された後に、もう ""を配置しない方法が必要です。どのようにこれについて行くための任意の推奨事項?mysqliは配列を介してPOST値を挿入します
おかげ
//DB setting
include '../../../plugins/MySQL/connect_db.php';
// Create connection
$conn = new mysqli($dbhost,$dbuser,$dbpass,$dbname);
// Check connection
if ($conn->connect_error) {
$_SESSION["error"] = "DB Connection failed..."; //Error Message
}
// clear variables
$querystring1 = ""; $querystring2 = "";
foreach($_POST as $key => $var) {
$querystring2 .= "'".$var."',"; $querystring1 .= $key.",";
}
$query1 = "(".$querystring1.") VALUES (".$querystring2.")";
$sql = "INSERT INTO `qci_modreport` $query1";
print $sql;
if (!$conn->query($sql)) {
echo "
<div class=\"alert alert-danger alert-dismissible\">
<button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">×</button>
<h4><i class=\"icon fa fa-ban\"></i> Error!</h4>
There was an error while excuting this query.<br />
(" . $conn->errno . ") " . $conn->error . "
</div>";
} else {
echo "
<div class=\"alert alert-success alert-dismissible\">
<button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">×</button>
<h4><i class=\"icon fa fa-check\"></i> Alert!</h4>
Success, record updated successfully. Refreshing database now...
</div>";
}
//close connection
$conn->close();
を大切はい、その重複したが、それでもこのコメントを投稿したいと思います。 $ querystring1 = rtrim($ querystring1、 '、');を追加できます。 $ querystring2 = rtrim($ querystring2、 '、'); foreachループが完了した後。あなたの解決策があります。 –