2012-03-08 5 views
2

私はログインスクリプトを作成していますが、/ tmpフォルダに書き込み権限がないので別のセッションを作成してsession.dave_pathを新しいフォルダに設定しました。session_start()がブラウザで動作していません

端末でスクリプトをテストしていて、フォルダが新しいエントリを取得しましたが、ブラウザでスクリプトを実行するとスクリプトが失敗し、新しいtmpフォルダには新しいエントリがありません。さて、ここで(スクリプトは、端末上で動作するので、もちろん、これは真でなければなりません)

を私は新しいパスをoutputingことにより、新しいパスをテストしてみたし、それは私に正しいことを示します

は私が開始する方法ですスクリプト:

ini_set('session.save_path', $path); 
session_start(); 

端末ではなくブラウザで動作する理由は何ですか?

答えて

1

これは明らかかもしれませんが、session_start()は、先頭に<html>の前にありますか?

+0

いいえ、スクリプトが新しいページにリダイレクトされるのは、ログインが成功した場合のみです。 – MariaH

+0

htmlページが必要な場合は、htmlタグが必要です。 –

2

おそらく許可の問題です。コマンドラインでファイルを実行すると、ユーザーとして実行されます。ブラウザ経由でファイルにアクセスすると、Webサーバーのユーザー(つまりApache)として実行されます。作成したフォルダにWebサーバーに書き込み権限を与え、問題が解決するかどうか確認してください。

+0

チャームのように働いた!ありがとうございました – MariaH

+1

問題を解決した場合、これを回答としてマークしたいと思うかもしれません;) – Ian

+0

この解決策も私のために働いています! MariaHこれを答えにして、イアンに信用を与えてください! – Jimmery

関連する問題