テーブル内のフィールド名を $_GET フィールド名と比較しようとしています。テーブル内に存在する場合はクエリ文字列を作成します。mysql_field_name を配列にロードするのに問題 $t1 = mysql_field_name($result,1);
があります。すべてが機能$vars = mysql_field_name($result);
していないようです。
これは機能しません
$query = array();
$result = mysql_query("SELECT * FROM search_prof");
$vars = mysql_field_name($result);
foreach ($vars as $v)
{
if (isset($_GET[$v]))
{
$query[] = $v.' = "'.addslashes($_GET[$v]).'"';
}
}
$query = implode(' AND ', $query);
これは機能します
$t1 = mysql_field_name($result,1);
$t2 = mysql_field_name($result,2);
$t3 = mysql_field_name($result,3);
$t4 = mysql_field_name($result,4);
$t5 = mysql_field_name($result,5);
$query = array();
$result = mysql_query("SELECT * FROM search_prof");
$vars = array('$t1', '$t2', '$t3', '$t4', '$t5');
foreach ($vars as $v)
{
if (isset($_GET[$v]))
{
$query[] = $v.' = "'.addslashes($_GET[$v]).'"';
}
}
$query = implode(' AND ', $query);