0
このページには、データベースに最大10個のレコードを入力できるページがあります。私が抱えている問題は、多くの(ほとんどの)ケースでは、ユーザーは1つまたは2つのレコードを入力するだけですが、データベースの挿入はすべての空レコードを処理していることも示しています。私はNULL値を受け入れないようにDBを設定しましたが、空白の値はNULLと全く同じではないと思われます。そのため、レコードはまだ挿入されています。空のレコードがデータベースに挿入されないように、これをどのようにコード化できますか?PHPを使用してMySQL DBに挿入するときに空レコードを除外する
現在のコードを挿入:
<?php
if (isset($_POST['submit'])) {
for($i = 0; $i < 10; $i++)
{
$indtypeid = $_POST['indtype'][$i];
$indicator = $_POST['indicator'][$i];
$actorid = $_POST['actor'][$i];
$reportid = $_POST['report'][$i];
print 'Row ' . $i . ': ' . $indtypeid . '-' . $indicator . '-' . $actorid . '<br/>';
$qry_digestreport = "INSERT INTO indicator (indtypeid,indicator,actorid,reportid) VALUES ('$indtypeid', '$indicator', '$actorid', '$reportid')";
if (!mysql_query($qry_digestreport,$connection))
{
die('Error: ' . mysql_error());
}
echo "<br/>Records added!<br/>";
にそのことについて少し読みたいかもしれませんので、あなたのコードは、SQLインジェクション攻撃に対して脆弱である全く
注意。どうもありがとう。これは初心者の方で、コア機能が動作した後に入力検証を行うよう計画しています。あなたが提供したリンクも良い助けになるはずです。ありがとう! –
+1注射防御のため。 –