• ユーザー登録した後
    、ログインしようしてもできず、ログには↓ワーニングが...
  • 質問者画像

    Y.YY.Y 
    ユーザー登録した後、ログインしようしてもできず、ログには↓ワーニングが出てしまいます。
    /var/tmp のファイルまたはディレクトリが見つからない、と見れます。
    処置方法についてアドバイスいただけると助かります.

    「PHP Warning: session_start(): open(/var/tmp/\sess_7f069ad014f117429f9d59781b6748ff, O_RDWR) failed: No such file or directory (2) in C:\MAMP\htdocs\webservice_practice03\webservice_practice03\function.php on line 33
    回答 2

    返信者画像

    ウェブカツ!!コーチ 
    講師からの回答
    おそらくセッションの情報を一時的にローカル環境(自分のPC)へ保存しておく先のディレクトリがない。
    という事かと思われます。
    PHP上では$_SESSION変数を使ってセッションに値を書き込んだり取得したり出来ますが、実態はテキストファイルのようなファイルに値が保存されていて、そのファイルにPHPが自動的に書き込んだり読み取ったりしています。
    PHPはサーバー上で動くため、サーバーの中にファイルが保存されるわけですが、今はローカル(自分のPC)がサーバーになっているので、自分のPCの中にセッションファイルが保存されます。
    保存先は優先度によって決まります。
    詳しくはこちら↓
    http://egapool.hatenablog.com/entry/2016/12/16/001748

    今回の場合、保存先の/var/tmpディレクトリがないということむになります。
    ディレクトリを作って、権限を777に設定してみましょう。

    コンソールを開いたら

    cd /var

    と打って移動したあとに

    sudo mkdir tmp

    と打つとtmpディレクトリが作成されますので、その次に

    sudo chmod 777 tmp

    と打ちます。するとtmpディレクトリの権限が変更されます。()

    それで解決するか確かめてみてください。

    返信者画像

    Y.Y 
    コンソール(Windowsのコマンドプロンプト?)を管理者権限で開き
    C:\WINDOWS\system32>cd/vdr
    と打つと、「指定されたパスが見つかりません」と出てしまいます。

    全くの無知で恐縮ですが、varディレクトリをまず作る必要があるのかなと思っていますが、上記system32ディレクトリ直下に作ればよいでしょうか?
    また作り方はコンソール上で「mkdir」で作るであってますでしょうか?

    返信者画像

    ウェブカツ!!コーチ 
    講師からの回答
    /var/tmp

    というのは

    ルートディレクトリ(1番大元のフォルダ)の中のvarディレクトリの中のtmpディレクトリという意味になります。

    なので、

    cd /

    でまずルートディレクトリに移動します。

    /

    はルートディレクトリを意味します。

    その後にルートディレクトリで

    mkdir var

    でvarディレクトリを作り

    同じようにその中に移動してからtmpディレクトリを作ってください。

    mkdir

    はディレクトリを新規作成するコマンドになります。

    返信者画像

    Y.Y 
    正常にログインしてマイページへ遷移できました。またワーニングも出なくなりました。ありがとうございます。