URLパラメータのリストからデータベースを処理する配列を作成しようとしています。基本的に私はさまざまなことをするいくつかの機能を持っています。 (挿入、更新など)ので、具体的に何をしようとしているかによっては、データベース内のすべての列が常に必要でない場合があります。配列の文字列をビルドして、PHPの空値またはNULL値を省略します。
は、だから私は渡されてしまうかもしれませんこれらの5つの潜在的なパラメータを持っていると言う:私はすべて5 coulmnsは、値のいくつかの並べ替えを必要とする新しい行を挿入していた場合は、idは、GR、BL、YW、
を再度。私がblカラムを更新しているとしたら、idとblのパラメータだけを渡します。 は、だから私は(ない実際のコードだけ例)クエリ文字列を構築するためにこれをやっている:foreach($_GET as $key => $value) {
$key = strtolower($key);
if (preg_match($acceptedGETS,$key)) $$key = $value;
}
$table_col = array (
'p_id' => $_GET['id'],
'p_gr' => $_GET['gr'],
'p_bl' => $_GET['bl'],
'p_yw' => $_GET['yw'],
'p_re' => $_GET['re']);
$vstring = implode(',' , $table_col);
今、これは、すべての変数のキーが値(またはしないNULL)を持っている限り、完璧に動作します。私の質問は、どのように配列から文字列を構築できますが、渡された値を取得しないキーを除外することです。今のキーに値が不足している場合、私は、例えばこれを取得:
URL:http://www.mysite.com/myscript.php?id=4&re=9は私になるだろう:私はちょうど4,9
を取得する必要があります4 ,,,, 9
ありがとう!
*を使用して、別の方法であります準備されたステートメントを使用していない場合は、それらをクエリに追加します。 – rid
こんにちは、実際のコードはmysql_real_escape_string()を使用しています。 – Chris