2012-04-20 6 views
0

私はIE9のmkdirに奇妙な問題があります。IEでrmdirの後にmkdirが動作しない

は、私は、フォルダとリンク解除とrmdirを使用して、フォルダ内のすべてのファイルをチェックし、

$temp_main_folder = session_id(); 
if(!is_dir($temp_main_folder)){ 
    mkdir($temp_main_folder . "/", 0755); 
} 

を使用してフォルダを作成したり削除することができているようです。

これはFirefox、Chrome、Safariで毎回動作します。問題は、IEでmkdirを初めて実行したときに動作することです。 IEでrmdirを実行するのは初めてです。しかし、次回にIEでmkdirを実行しようとすると何も起こりません。エラーはなく、フォルダが削除されているのがわかります。 IEを再起動して再び動作させる必要があります。

私はApache 2ウェブサーバーでWindowsを実行しています。

+0

phpはサーバー側であり、ブラウザはirerevantです。 –

+0

ええと私は知っているが、私はIEを使用しているときにのみ発生するその奇妙な動作 – puks1978

答えて

0

ブラウザは、野生の推測はおそらくすなわち

のみ効果ブラウザがsession_id()機能を調べることによって決定することができますすることができます。..

を送信していない...そのサーバ側として、PHPに影響を与えることはできませんセッションIDを取得するために必要なCookie ..

0

ありがとうございました。問題はIEがmkdir要求をキャッシュしていたことでした。フォルダが存在するかどうかを確認するときに、IEはまだそれを実行したと考えました。

+0

あなたはディレクトリ構造の表示をキャッシュする意味ですか?ブラウザでPHP関数をキャッシュすることはできません –

+0

ヘッダー( "Cache-Control:no-cache、must-revalidate")を追加すると、ヘッダー( "Expires:Mon、1997年7月26日05:00:00 GMT")。出来た – puks1978