phpでエラーが発生し、開発が進まない問題について

このQ&Aのポイント
  • phpでエラーが出て開発が進まない問題について相談です。現在、ファイルを指定してそのファイルを開き、表示するというプログラムを作成していますが、以下のエラーが発生しています。
  • エラーメッセージは「Warning: file(): Filename cannot be empty in /home/runner/245ch/core.php on line 94 Warning: array_reverse() expects parameter 1 to be array, bool given in /home/runner/245ch/core.php on line 96」となっています。
  • どうすればこのエラーを解消できるか、解決方法を教えていただきたいです。また、エラーの原因となっているプログラムも示しておりますので、ご確認ください。
回答を見る
  • ベストアンサー

phpでエラーが出て開発が進みません

今、ファイルを指定してそのファイルを開き、表示するというプログラムを作っています。 それで Warning: file(): Filename cannot be empty in /home/runner/245ch/core.php on line 94 Warning: array_reverse() expects parameter 1 to be array, bool given in /home/runner/245ch/core.php on line 96 というエラーが出てしまいますどうか回答お願いします。 プログラムは <?php $i; $counter = 0; $filename = 'ip制限.dat'; // fopenでファイルを開く('r'は読み込みモードで開く) $fp = fopen($filename, 'r'); // fgetsでファイルを読み込み、変数に格納 $lines = file($filename, FILE_IGNORE_NEW_LINES); for($i = 0; $i <50 ; $i++){ if($lines[$counter] == $_SERVER["HTTP_X_FORWARDED_FOR"]){ header("location: https://245ch.teamperaggu.repl.co/ihan.html"); }; $counter = $counter + 1; } fclose($fp); // ファイルの指定 //エスケープする関数 function h($s){ return htmlspecialchars($s,ENT_QUOTES,'UTF-8'); } if(isset($_POST["sentaku"])){ $dataFile = trim($_POST['filee']) . ".dat"; $rr = trim($_POST['filee']) . ".dat"; } if(isset($_POST["kousin"])){ $message = trim($_POST['message']); $user = trim($_POST['user_name']); $ip = $_SERVER["HTTP_X_FORWARDED_FOR"] ; file_put_contents("ip.dat","user ". $user ." ". $ip . "\n", FILE_APPEND); //messageが空じゃなかったら if(!empty($message)){ //userが空の場合、名無しにする if(empty($user)){ $user = "名無し"; } //日付を取得する $postDate = date('Y-m-d H:i:s'); //ファイルに書き込むメッセージを作成する $newData = " /名前/ ". $user." /メッセージ/ ".$message." /時間 /".$postDate."\n"; //ファイルを開く $fp = fopen($dataFile,'a'); //ファイルに書き込む fwrite($fp,$newData); //ファイルを閉じる fclose($fp); } } //name="send_message"のPOST送信があった時 if(isset($_POST["send_message"])){ //送信されたname="message"とname="user_name"の値を取得する $message = trim($_POST['message']); $user = trim($_POST['user_name']); $ip = $_SERVER["HTTP_X_FORWARDED_FOR"] ; file_put_contents("ip.dat","user ". $user ." ". $ip . "\n", FILE_APPEND); //messageが空じゃなかったら if(!empty($message)){ //userが空の場合、名無しにする if(empty($user)){ $user = "名無し"; } //日付を取得する $postDate = date('Y-m-d H:i:s'); //ファイルに書き込むメッセージを作成する $newData = " /名前/ ". $user." /メッセージ/ ".$message." /時間 /".$postDate."\n"; //ファイルを開く $fp = fopen($dataFile,'a'); //ファイルに書き込む fwrite($fp,$newData); //ファイルを閉じる fclose($fp); } } //一行ずつデータを取り出して配列に入れる $post_list = file($dataFile,FILE_IGNORE_NEW_LINES); //逆順に並べ替える $post_list = array_reverse($post_list); ?> <style> a.text { position: absolute; /*自由に配置する指定*/ bottom: 0; /*下寄せの指定*/ right: 50; font-size: 25px; } a.test { position: absolute; /*自由に配置する指定*/ bottom: 0; /*下寄せの指定*/ right: 200; font-size: 25px; } a.test { position: absolute; /*自由に配置する指定*/ bottom: 0; /*下寄せの指定*/ right: 200; font-size: 25px; } </style> <body> <h1>掲示板へようこそ</h1> <!--ここで投稿内容を送信する--> <form action="" method="post"> <from method="post"> <input type="text" name="filee"> <input type="submit" name="sentaku" value="選択"> </from> メッセージ:<input type="text" name="message"> ユーザー名:<input type="text" name="user_name"> <input type="submit" name="send_message" value="投稿"> <input type="submit" name="kousin" value="更新"> </form> <h2>投稿一覧</h2> <ul> <!--post_listがある場合--> <?php if (!empty($post_list)){ ?> <!--post_listの中身をひとつづつ取り出し表示する--> <?php foreach ($post_list as $post){ ?> <li><?php echo h($post); ?></li> <?php } ?> <?php }else { ?> <li>まだ投稿はありません。</li> <?php } ?> </ul> <a class="text" href="kiyaku.html">利用規約</a> <a class="test" href="otoiawase.php">お問い合わせ</a> </body>

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • nowaver
  • ベストアンサー率22% (314/1370)
回答No.1

>というエラーが出てしまいますどうか回答お願いします。 何の回答? エラーを解消したいのでしたら、Warningにかかれている部分を修正すると良いと思いますが。

knejfud
質問者

補足

どこをどう修正すればいいかを、教えてくれるとうれしいです。

関連するQ&A

  • PHPで掲示板

    PHPでひとこと掲示板を以下の要件を満たすように作成しています。 ・利用者が名前とコメントを入力し、発言できる。 ・利用者の過去の発言内容をテキストファイルで管理する。 ・全ての利用者の過去の発言内容を一覧で表示する。一覧には「名前」「コメント」「発言日時」の3つを1行ずつ表示する。 ・利用者の名前は最大20文字以内まで発言できる。もし20文字より多くの文字を入力して発言した場合はエラーメッセージを表示し、発言できないようにする。 ・利用者のコメントは最大100文字以内まで発言できる。もし100文字より多くの文字を入力して発言した場合はエラーメッセージを表示し、発言できないようにする。 ・利用者の名前とコメントは必ず文字が入力される。もし名前あるいはコメントが未入力で発言した場合はエラーメッセージを表示し、発言できないようにする。 ・(ソースコード)比較演算子は、「===」や「!==」を利用すること 初心者なので、頭がこんがらがって意味が分からなくなってしまいました。以下のコードでおかしいところのご指摘をお願いします。また、よろしければ皆さんのプログラミングのオススメ学習法を教えていただけると幸いです。 <?php const FILE_NAME = './bbs.txt'; $date = date("Y-m-d H:i:s"); $log = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $name = $_POST['name']; // $comment = $_POST['comment']; // $log = $name . ':' . $comment . '-' . $date . "\n"; if (($fp = fopen(FILE_NAME, 'a')) !== false) { if ((mb_strlen($name) <= $name_max) && (mb_strlen($name) !== 0)){ print '名前は20文字以内で書いてください'; if (fwrite($fp, $name) === false) { print 'ファイル書き込み失敗'; } } fclose($fp); } if ($_SERVER['REQUEST_METHOD'] === 'POST') { // $name = $_POST['name']; $comment = $_POST['comment']; $log = $name . ':' . $comment . '-' . $date . "\n"; if (($fp = fopen(FILE_NAME, 'a')) !== false) { if ((mb_strlen($comment) <= $comment_max) && (mb_strlen($comment) !== 0)){ print 'ひとことは100文字以内で書いてください'; if (fwrite($fp, $log) === false) { print 'ファイル書き込み失敗'; } } fclose($fp); } $data = array(); if (is_readable(FILE_NAME) === true) { if (($fp = fopen(FILE_NAME, 'r')) !== false) { while (($tmp = fgets($fp)) !== false) { $data[] = htmlspecialchars($tmp, ENT_QUOTES, 'UTF-8'); } fclose($fp); } } ?> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h1>一言掲示板</h1> <form method="post"> <p>名前 : <?php if (mb_strlen($name)){?><input type="text" name="name"> <?php } ?> ひとこと : <?php if (mb_strlen($comment)){?><input type="text" name="comment"><?php } ?> <input type="submit" value="送信"> </p> </form> <ul> <?php foreach ($data as $value) { ?> <li> <?php print $value; ?> </li> <?php } ?> </ul> </body> </html>

    • ベストアンサー
    • PHP
  • phpのエラーチェックについて質問です!

    phpのエラーチェックについて質問です! エラーチェックについてです><; if(isset($_POST['name'])){ $name = htmlspecialchars($_POST['name']); if (empty($name)) { $message = '未入力があります'; と記入してエラーメッセージを表示したい場所に記載してます。 しかし、フォームで <form action="regist2.php" name="form" method="post"> でsubmit押すとフォームが空白でもactionでregist2.phpに送られてしまいます><; エラーがなければ、そのままsubmitでaction=regist2.phpに送りたいと考えております。 なにか解決方法はないでしょうか? ご教授お願いします!!!!!!!!

    • 締切済み
    • PHP
  • PHP 掲示板記述

    現在、PHPで掲示板をメモ帳で作成しています。 今回は、よくよく分からないものを記載! PHPタグ================================= <?php // 保存するログファイル名 $LOGFILE = "log.txt"; … (1) // POST で mode = write の属性が送られていたら書き込み処理 if ($_POST["mode"] == "write") { … (2)   $name = $_POST["name"]; … (3)   $message = $_POST["message"];   $date = date("Y/m/d H:i:s"); … (4)   if (file_exists($LOGFILE)) { … (5)     $lines = file($LOGFILE); … (6)   }   $fp = fopen($LOGFILE,"w"); … (7)   fputs($fp,"$name,$message,$date\n"); … (8)   for ($i=0;$i<count($lines);$i++) { … (9)     fputs($fp,$lines[$i]); … (10)   }   fclose($fp); } ?> PHP 解説よくよく分からない=========== (1) では変数で説明した変数に保存するファイル名を指定しています。ファイル名は保存、読み込みのところで複数回つかうので使いまわしできるように変数に入れています。 (2) では前ページで説明した、 <input type="hidden" name="mode" value="write"> でフォームから送られる情報を $_POST["mode"] で受け取って、その値が "write" かどうかチェックしています。 「投稿する」ボタンを押してサーバに情報が送信される際に mode=write も送られていますので、それを if文で判定しています。通常のアクセスでは mode=write が送られないため、書き込み処理を行わないという感じです。 (3) では(2)同様、フォームから送られた name の情報を受け取って $name という変数に入れています。 (4) では現在の日付を取得しています。PHPには date 関数という代物があって簡単に現在の日付を取得できます。 (5) ではファイルが存在するかチェックしています。 file_exists関数でファイルが存在するか調べています。 (6) では file 関数によって配列にデータをすべて入れています。なぜここでデータを変数に入れるかというと、新しく投稿されたデータを1行目に書き込んで、残りに古い情報を書き込むためです。 なまえ,メッセージ,2005/02/06 なまえ,メッセージ,2005/02/06 なまえ,メッセージ,2005/02/06 青が新しく投稿された情報で赤が元々保存されていたふるい情報 (7) ではこれから書き込むのでfopen関数でファイルを書き込みモードで開いています。 (8) では開いたファイルにfputs関数で書き込んでいます。名前、メッセージ、日付をカンマ区切りで1行にしてファイルに書き込んでいます。 (9),(10) では古いファイルの情報(投稿前に書き込まれていた情報)を書き込んでいます。これを行わないと、新しく投稿された情報は書き込まれますが、古い情報が消えてしまうのでこの処理をしています。 PHPの解説でよくわからないので、お答えしてください。                                     ♪♪宜しくお願いします。♪♪

    • ベストアンサー
    • PHP
  • PHP初心者です。エラーが出て困っております。

    ※下記がスクリプトです。((エラーは最下部にございます。) <?php require('../dbconnect.php'); session_start(); if (!empty($_POST)) { // エラー確認 if (isset($_POST['name']) == '') { $error['name'] = 'blank'; } if (isset($_POST['mail1']) == '') { $error['mail1'] = 'blank'; ..........省略 } } // 重複アカウントチェック if (isset($_POST['mail1'])) { if (empty($error)) ; $sql = sprintf('SELECT COUNT(*) AS cnt FROM ○○ WHERE mail1="%s"', mysql_real_escape_string($_POST['mail1']) ); $record = mysql_query($sql) or die(mysql_error()); $table = mysql_fetch_assoc($record); if ($table['cnt'] > 0) { $error['mail1'] = 'duplicate'; } } if (empty($error)) { // 画像をアップロードする $upfile = date('YmdHis') . $_FILES['upfile']['name']; move_uploaded_file($_FILES['upfile']['tmp_name'], '../member_picture/' . $upfile); $_SESSION['join'] = $_POST; $_SESSION['join']['upfile'] = $upfile; header('Location: check.php'); } } // 書き直し if (isset($_REQUEST['action']) == ('rewrite')) { $_POST = $_SESSION['join']; $error['rewite'] = true; } ?> <html.....省略 <body> <h1>会員登録</h1> <div id="content"> <p>記入ください。</p> <form action="" method="post" enctype="multipart/form-data"> <dl> <dt>ニックネーム<span class="required">必須</span></dt> <dd> <input type="text" name="name" size="35" maxlength="255" value="<?php if (isset($_POST['name'])) {echo htmlspecialchars($_POST['name'],ENT_QUOTES, 'UTF-8'); } ?>" /> <?php if (!isset($error['name'])) {$error['name']="blank";} if ($error['name'] == 'blank'): ?> <p class="error">* ニックネーム</p> <?php endif; ?> </dd>................続く ※エラーは、 Notice Undefined index: name in....... です。 どうすれば上記エラーが消えますでしょうか? また、その際はどこをどのように直せばよろしいでしょうか。 お手数をおかけ致しますが、お力をお貸しいただければ嬉しく思います。 お願い致します。

    • ベストアンサー
    • PHP
  • <?php

    <?php if(isset($_POST['name'])){ $name = htmlspecialchars($_POST['name']); if (empty($name)) { $message = '未入力があります'; } } if(isset($_POST['regist'])) { $regist = htmlspecialchars($_POST['regist']); if($message) { header('Location:regist2.php'); } } ?> <html> <form action="regist2.php" name="form" method="post"> <div align=left> 名前<input type="text" name="name" maxlength="16" istyle="1" format="M" mode="hiragana" style="-wap-input-format:&quot;*&lt;ja:h&gt;&quot;; -wap-input-format:*M;" /><br /> <input type="submit" name="regist" value="送信" /> </form> と携帯サイトを作成してるのですが、空白でもそのままregist2にいってしまい困っております。 空白の場合はsubmit押してもエラーを表示させたいのです 問題がなければ、そのままregist2.phpへいかせる方法はないでしょうか? ご教授お願い致します。

    • 締切済み
    • PHP
  • PHPの画像アップ時の拡張子制限とエラー表記の方法

    PHP初心者です。画像をDBにアップロードする際jpgの場合のみアップできるようにして、 それ以外の場合エラーメッセージを表記させたいのですが、上手くいきません。 下記がソースになります。 if(!empty($_POST)) { if($_POST['image'] == '') { $error['image'] = 'blank'; } //画像エラーの確認 $fileName = $_FILES['image']['name']; if(!empty($fileName)) { $ext = substr($fileName, -3); if($ext !='jpg') { $error['image'] = 'type'; } } if(empty($error)) { //画像をアップロードする $image = date('YmdHis') . $_FILES['image']['name']; move_uploaded_file($_FILES['image']['tmp_name'], '../member_picture/' . $image); $_SESSION['join'] = $_POST; $_SESSION['join']['image'] = $image; header('Location: content_upload.php'); } } //メッセージを記録する if (!empty($_POST)) { if ($_SESSION['join']['image'] !='') { $sql = sprintf('INSERT INTO post SET member_id=%d,message="%s", title="%s", image="%s", created=NOW()', mysql_real_escape_string($member['id']), mysql_real_escape_string($_POST['message']), mysql_real_escape_string($_POST['title']), mysql_real_escape_string($_SESSION['join']['image']) ); mysql_query($sql) or die(mysql_error()); header('Location: content_upload.php'); } } (以下body) <form action="" method="post" enctype="multipart/form-data"> <dl> <dt>ログイン名:<?php echo $member['name']; ?>投稿画面<br><br>タイトル</dt> <dd> <input type="text" name="title" size="35" maxlength="255" value="<?php echo h($_POST['title']); ?>" /> </dd> <dt>メッセージ</dt> <dd> <input type="text" name="message" size="35" maxlength="255" value="<?php echo h($_POST['message']); ?>" /> </dd> <dt>写真 <span class="required">必須</span></dt> <dd> 画像<br> <input type="file" name="image" /> <?php if($error['image'] == 'type'): ?> <p class="error">* 画像は「.jpg」の画像を指定してください</p> <?php endif; ?> <?php if($error['image'] == 'blank'): ?> <p class="error">* 恐れ入りますが、画像を改めて指定してください</p> <?php endif; ?> </dd> </dl> <div><p><input type="submit" value="投稿する" /></p></div> </form> 「//メッセージを記録する」で画像がないと何もDBに入らないようにしたはずですがtitleとmessageは必ず入り、違う拡張子の画像を入れても「date('YmdHis')」部分だけは入ってしまいます。 エラーメッセージはどうしても出ません。初歩的なミスかもしれませんが宜しくお願いします

    • ベストアンサー
    • PHP
  • スマホ用PHP掲示板

    PHPで掲示板を簡易的に作ったのですが スマートフォン(iPhone)にも対応したく思います。 端末用にコーティングするにはどのような記述をしたら良いでしょうか。 【ソース】 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ <html> <head><title>TEST</title></head> <body> <p>掲示板</p> <form method="POST" action="<?php print($_SERVER['PHP_SELF']) ?>"> <input type="text" name="personal_name"><br><br> <textarea name="contents" rows="8" cols="40"> </textarea><br><br> <input type="submit" name="btn1" value="投稿する"> </form> <?php if($_SERVER["REQUEST_METHOD"] == "POST"){ writeData(); } readData(); function readData(){ $keijban_file = 'keijiban.txt'; $fp = fopen($keijban_file, 'rb'); if ($fp){ if (flock($fp, LOCK_SH)){ while (!feof($fp)) { $buffer = fgets($fp); print($buffer); } flock($fp, LOCK_UN); }else{ print('ファイルロックに失敗しました'); } } fclose($fp); } function writeData(){ $personal_name = $_POST['personal_name']; $contents = $_POST['contents']; $contents = nl2br($contents); $data = "<hr>¥r¥n"; $data = $data."<p>投稿者:".$personal_name."</p>¥r¥n"; $data = $data."<p>内容:</p>¥r¥n"; $data = $data."<p>".$contents."</p>¥r¥n"; $keijban_file = 'keijiban.txt'; $fp = fopen($keijban_file, 'ab'); if ($fp){ if (flock($fp, LOCK_EX)){ if (fwrite($fp, $data) === FALSE){ print('ファイル書き込みに失敗しました'); } flock($fp, LOCK_UN); }else{ print('ファイルロックに失敗しました'); } } fclose($fp); } ?> </body> </html> _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ ご教示の程宜しくお願い致します。

    • ベストアンサー
    • PHP
  • phpのエラーについて

    phpでメールフォームを作っています。 メールフォーム(1)、(2)、(3)と3つ作っています。 (2)で確認して記入内容に間違いがなれけば送信して(3)を表示。 間違っていたら(1)に戻るというものです。 確認するページ(2)の記述でParse error: syntax error, unexpected T_STRING in……とエラーが出ます。 その問題の行は、セッションを開始したすぐ下の行の die('不正アクセスの疑いがあります。'); という部分です。 この行と、それより以前・以後を何度も確認しましたがエラーの原因となるものが発見できません…… PHP初心者なのでもうお手上げです>< どなたかご教授よろしくお願いします!!! レンタルサーバーはヘテムルでphpは5.2.8です。 <?php function checkInput($var){ if(is_array($var)){ return array_map('checkInput', $var); } else { if(get_magic_quotes_gpc()){ $var = stripslashes($var); } if(preg_match('/\0/', $var)){ die('不正な入力です。'); } if(!mb_check_encoding($var, 'UTF-8')){ die('不正な入力です。'); } return $var; } } session_start(); $_POST = checkInput($_POST); if(isset($_POST['ticket']) && isset($_SESSION['ticket'])){ $ticket = $_POST['ticket']; if(!in_array($ticket, $_SESSION['ticket'])){ die('不正アクセスの疑いがあります。'); //この行がエラーとなります。 } }else{ die('不正アクセスの疑いがあります。'); } $name = isset($_POST['name']) ? $_POST['name'] : NULL ; $email = isset($_POST['email']) ? $_POST['email'] : NULL ; $name = isset($_POST['comment']) ? $_POST['comment'] : NULL ; $error = array(); if(trim($name) == ''){ $error[] = 'お名前は必須項目です。'; } else if(mb_strlen($name) > 100){ $error[] = 'お名前は100文字以内でお願いします。'; } if(trim($email) == ''){ $error[] = 'メールアドレスは必須項目です。'; } else { $pattern = '/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/iD'; if(!preg_match($pattern, $email)){ $error[] = 'メールアドレスの形式が正しくありません'; } } if(trim($comment) == ''){ $error[] = 'コメントは必須項目です。'; } else if(mb_strlen($comment) > 500){ $error[] = 'コメントは500文字以内でお願いします。'; } $_SESSION['name'] = $name; $_SESSION['email'] = $email; $_SESSION['comment'] = $comment; $_SESSION['error'] = $error; if(count($error) > 0) { $dirname = dirname($_SERVER['SCRIPT_NAME']); $dirname = dirname == DIRECTORY_SEPARATOR ? '' : $dirname; $uri = 'http://' .$_SERVER['SERVER_NAME'] . $dirname . '/○○.php'; header('HTTP/1.1 303 See Other'); header('Location: ' . $uri); } else { ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>確認フォーム</title> </head> <body> <div id="form"> <p>以下の内容でよろしければ送信ボタンを押してください。</p> <dl> <dt>お名前:</dt> <dd><?php echo h($name);?></dd> </dl> <dl> <dt>メールアドレス:</dt> <dd><?php echo h($email);?></dd> </dl> <dl> <dt>コメント:</dt> <dd><?php echo nl2br(h($comment));?></dd> </dl> <form action="thank.php" method="post"> <input type="hidden" name="ticket" value="<?php echo h($ticket);?>" /> <input type="submit" name="submit" value="送信する" /> </form> </div> </body> </html> <?php } function h($string) { return htmlspecialchars($string, ENT_QUOTES); } ?>

    • ベストアンサー
    • PHP
  • PHPでのファイル操作

    Phpで一覧画面を作成しています。 フォームからの情報をリストごと各行でテキストファイルに書き込ませています。 管理画面で削除、変更を行いたいんですが、特定のファイルの行数を削除できないので困っています。 $garls_list = file("./dat/garls_list.php"); $fp = fopen("./dat/garls_list.php", "w"); foreach ($garls_listt as $dat_line => $new_list) { if ($dat_line == $_POST["list"]) { // 何も書き込まない→この行を削除したと同一 } else { fwrite($fp, $new_list); } } fclose($fp); これだとファイルが真っ白になってしまいます。 詳しい方がいらっしゃいましたらご教授お願いします。 . グレード この質問に補足する.

    • 締切済み
    • PHP
  • <?php

    <?php session_start(); $_SESSION['name'] = $_POST['name']; $_SESSION['kana'] = $_POST['kana']; $_SESSION['nick'] = $_POST['nick']; $_SESSION['sex'] = $_POST['sex']; $_SESSION['pass'] = $_POST['pass']; $_SESSION['pass2'] = $_POST['pass2']; $_SESSION['mail'] = $_POST['mail']; if(empty($_SESSION['name'])) { $_SESSION['error'] = '名前を入力して下さい'; } if(empty($_SESSION['kana'])) { $_SESSION['error'] = 'フリガナを入力して下さい'; } if(empty($_SESSION['pass'])) { $_SESSION['error'] = 'パスワードを入力して下さい'; } if(empty($_SESSION['pass2'])) { $_SESSION['error'] = '確認用パスワードを入力して下さい'; } if($_SESSION['pass'] and $_SESSION['pass2'] and ($_SESSION['pass'] != $_SESSION['pass2'])){ $_SESSION['error'] = 'パスワードが一致しません'; } if (preg_match("/^[a-zA-Z0-9]{4,12}$/", $_SESSION["pass"])){ $_SESSION['error'] = 'パスワードは半角英数字で入力して下さい'; } if(isset($_SESSION["error"])) { header("Location: regist.php"); exit; } else { header("Location: index.php"); exit; } ?> で、PCからみるとエラーメッセージがでるのですが、自分の携帯(ドコモ)でみるとエラーメッセージが表示されていません・・・ なぜでしょうか?><; フォーム画面のソースは <?php if (isset($_SESSION["error"])) { echo $_SESSION["error"]; session_destroy(); } ?> </font> <font size="2"> <form action="error_check.php" name="form" method="post"> //ここからフォーム内容 です。 ご教授のほど宜しくお願い致します><;;;;;;; 補足 >GETで、セッション名に、session_id()で取得した値を渡してやる必要があります。 それはいったいどうやるんですか?><; 簡単でいいのでソースとか記述してくださればわかりやすいです><; お願い致します><;

    • 締切済み
    • PHP

専門家に質問してみよう