いくつかの同様の質問が見つかりましたが、これとまったく同じものはありません...だからここに行きます...
したがって、この SQL ステートメントを PHPMyAdmin SQL ウィンドウに貼り付けると完全に機能しますが、PHP mysql_query ステートメントとして実行すると結果はゼロ (エラーなし) になります。
SELECT distinct action_detail2
FROM stats_tracking
WHERE date_entered >= '2013-05-08 00:00:00' AND
date_entered <= '2013-05-08 23:59:59' AND
action_detail1 != '10.0.0.1'
ORDER BY action_detail2
構文に何か問題があるとエラーになると思うでしょう。ご覧のとおり、特定の日のすべてのエントリを返そうとしています。そして、それは PHPMyAdmin で完全に機能します。「mysql_query」呼び出しで 0 の結果を返すだけです。
コードは次のとおりです。
// Fix date entries
$fixFrom = explode("-", $_GET['from']);
$FROM = $fixFrom[2] . "-" . $fixFrom[0] . "-" . $fixFrom[1];
$fixTo = explode("-", $_GET['to']);
$TO = $fixTo[2] . "-" . $fixTo[0] . "-" . $fixTo[1];
// Build SQL statement
$SQL_Centers = "
SELECT distinct(action_detail2)
FROM stats_tracking
WHERE date_entered >= '" . $FROM . " 00:00:00' AND
date_entered <= '" . $TO . " 23:59:59' AND
action_detail1 != '10.0.0.1'
ORDER BY action_detail2
";
$resultCenters = mysql_query($SQL_Centers); // Run the actual query.
$dataCount_Centers=mysql_num_rows($resultCenters); // Get the count of rows, just in case we need it.
echo $dataCount_Centers;
これは 0 のカウントを返しています。エラーはありません。コードの後半で、すべてのデータ出力を JSON に変換すると、他のすべてのクエリが機能します。これも JSON レコードを示していません。繰り返しますが..エラーはありません。それらはすべて同じDB接続を介して実行されています..など。明らかに、このステートメントにより、レコードが返されません。
SQL ステートメントを ECHO してから、Firebug からこの質問にコピー アンド ペーストしました。次に、それを PHPMyAdmin SQL に貼り付けて実行しました。完璧に機能しました。
どんな助けでも大歓迎です。
ありがとう