-1

行の1つのセルのみがnullまたは次のように空白になっている場合でも、mysqlがこれを(それ自体またはphpスクリプトで)実行しないようにする方法:' '.

データを挿入する通常の方法を使用します。

 $sql = "INSERT INTO `rows` (`results1`, `results2`) VALUES ('$res1', '$res2')";
 $res = mysqli_query($dbc, $sql);
4

5 に答える 5

2
  1. データを送信する前に PHP で確認してください。
  2. テーブルの列をマークし、NOT NULL挿入中にTRIM()関数を使用します。
于 2012-05-29T14:56:16.857 に答える
1

以下を試してください。// $res は、ユーザー入力などとして取得する値です。

if(empty($res))
    {
    $error[] = "not able to send as value is null";
    }

複数の値がある場合は配列を使用します。そしていま

 if(empty($error))
    {
$var = trim($res);
    // your insert code.
    }

これにより、空白やヌルを避けることができます。

于 2012-05-29T15:27:43.150 に答える
0
$r1= trim($res1);
$r2= trim($res2);

if ($r1 ==''||$r2 ==''){

echo 'its null or whitespace';

} else {

 $sql = "INSERT INTO `rows` (`results1`, `results2`) VALUES ('$r1', '$r2')"; 
 $res = mysqli_query($dbc, $sql); 

}

うまくいきました。

于 2012-05-29T16:10:38.710 に答える
0

SQL インジェクションに対して脆弱であるため、挿入クエリを実行する前にデータを確認し、値をクエリで使用する前やプレースホルダーを使用する前に引用符で囲みます。

于 2012-05-29T14:55:56.060 に答える
0

avoid NULLs の場合、NOT NULLディレクティブを指定できます

于 2012-05-29T14:56:19.970 に答える