2012-04-19 4 views
0

まず歴史のビット。私たちは、あるホスティングプロバイダ(hostexcellence)から別のホスティングプロバイダ(1and1)にサイトを移動しました。クライアントがリセラーホスティングとは別の独自のホスティングを取得したかったからです。特定のPHP MySQLのクエリは、ルートフォルダで動作していません

サイトは1つのことを除いて正常に動作しています。

なんらかの理由で、またはルートフォルダで実行された別の特定のクエリが機能していませんが、サブフォルダで完全に正常に動作します。さらに、複数の結果を返すクエリを実行するとうまくいきますが、1行の項目を返すクエリを実行すると、空のセットが返されます。ここで

クエリ

'SELECT `specials`.*, DATE_FORMAT(startdate, "%d %b %Y") AS sdate, DATE_FORMAT(enddate, "%d %b %Y") AS edate FROM `specials` WHERE enddate > NOW() and active = 1' 

の一つである。しかし、私は別のテーブルに類似したクエリを実行する場合、私はこれらの中では動作しませんが、前述したように、それは細かい

'SELECT *, DATE_FORMAT(startdate, "%d %b %Y") AS sdate, DATE_FORMAT(enddate, "%d %b %Y") AS edate FROM events WHERE enddate >= NOW() AND active = 1' 

の作品ウェブサイトのルートフォルダではなく、任意のサブフォルダで動作します。

mysql_error()は何も返しません。それは単に空の結果を返します。

私は過去2日間のエラーをトレースしようとしているので、任意のアイデア。

これはApacheサーバー上で実行されていて、違いがあり、そのディレクトリにhtaccessファイルが存在しない場合は実行されています。事前

編集

おかげで、私は以下の方法のすべてを試みたが、私は、クエリは、彼らが他のページとのphpMyAdminで正常に動作しているページとは別の再試行しました。だから私はちょっと気分が悪いです。

+0

'open_basedir' PHP設定オプション? –

+0

SQLコードがディレクトリを認識しているとは考えにくいです。ほとんどの場合、PHPエラーログを有効にしていないか、エラー報告レベルが低いです。 –

+0

私はページに次のものを追加しました(ホスティングプロバイダがphp.iniで許可するオプションはかなり制限されています)、テストしてもエラーは返されません:'ini_set( 'display_errors'、1);ini_set( 'log_errors'、1);ini_set( 'error_log'、dirname(__ FILE__)。 '/error_log.txt'); error_reporting(E_ALL); ' –

答えて

0

はあなたがthis-

SELECT *, DATE_FORMAT(startdate, "%d %b %Y") AS sdate, DATE_FORMAT(enddate, "%d %b %Y") AS edate FROM specials WHERE enddate > NOW() and active = 1' 

を試してみました。また、バックアップ計画として、DBへの接続を確認し
(またはどちらか使用する方法接続コマンドからとmysql_select_db両方のエラーを返すようにしてみてくださいあなたのデータベースを選択する)。

+0

文字列を試しましたが、違いはありません。特定のテーブルをクエリする前に他のテーブルで成功したクエリを実行できるので、接続が開いています –

+0

IDE /編集者はあなたのコードを書いていますか?どのような方法でお互いに関係のあるテーブルを照会するのですか? – RedRazor

+0

私はtextmateを使ってファイルを編集し、ftp経由でアップロードします。シンプルな自動インクリメントフィールドです。しかし、質問の先頭にある質問では、IDで検索するのではなく、日付とアクティブフラグが特定のテーブルに設定されているかどうかで検索しています。 –

関連する問題