以内に動作しません。他の1012,1013,1012,1013,1014のみ。MySQLのクエリは、私はPHPのこの作品を持っているPHPファイル
// $php_variable=2
$SQL_M = "SELECT @gender:=$php_variable, B.id, B.notes, B.time_logged
FROM database.evs B
INNER JOIN (select @gender:=0) as Something
WHERE
CASE WHEN @gender=2
THEN (B.items IN ('1012', '1013', '1014'))
ELSE (B.items IN ('1012', '1013'))
END
ORDER BY B.time_logged ASC";
$result = mysql_query($SQL_M);
$mycount = mysql_num_rows($result);
if ($mycount > 0) {
while ($mrow = mysql_fetch_array($result))
{
extract($mrow);
echo ">>>>".$id."<br/>"
//Works locally - not on server.
}
}
の$ php_variableが、それはアイテムIDと出力項目をすべき2
です:1012,1013,1014
代わりに、1012,1013内の項目の結果を出力します。
奇妙なことは、このクエリをローカル(PHPとmysqlのクエリだけ) とサーバー(Plesk - Mysql)でテストしたところ、うまく動作することです。
サーバーのphpファイル内で実行されません。また、ORDERが正しく機能していません。実行する必要があり
クエリは次のとおりです。
$SQL_M = "SELECT B.id, B.notes, B.time_logged
FROM database.evs B
WHERE B.items IN ('1012', '1013', '1014')
ORDER BY B.time_logged ASC";
PHPバージョン:5.16
(ローカルおよびサーバ)MySQLのバージョン:5.0.77(ローカルおよびサーバ)
あなたの助けを前にありがとう。
なぜあなたは条件でPHPでクエリを構築しないのですか?これは不必要に複雑に思える。 – jeroen
私が与えた例に基づいて、私はあなたに同意します。実際にははるかに複雑ですが、この単純な例はうまくいきません。私はその理由を見つけようとしています... –
echo $ SQL_Mを試してみて、mysqlコマンドライン/ phpmyadminから実行してください $ SQL_Mとは何ですか? –