phpで画面にコードが表示される問題の解消方法

このQ&Aのポイント
  • phpで画面の表示がおかしい問題が発生しました。if文のelseの手前の ';}から、以降のコードが画面に表示されるため、本来の画面が表示されません。
  • 解決方法を教えていただけませんか?環境はwindows7pro 64bit、IE11です。
  • 質問の詳細なコードと一部抜粋を以下に示します。
回答を見る
  • ベストアンサー

php で画面にコードが表示されてしまう

php で画面の表示がおかしい。 なぜか、写真のように、急にコードが表示されるようになりました。どうか、お助けください。 下記記述で、if文のelseの手前の ';}から、以降全てのコードがそのまま画面に表示されてしまい、本来の処理した画面が表示されません。 どうすれば解消されるか、教えていただけないでしょうか? 環境は、windows7pro 64bit、IE11です。 以下 一部記述の 抜粋です。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>依頼内容確認</title> </head> <body> <?php //error_reporting(E_ALL ^ E_NOTICE); $busyo=$_POST['busyo']; $name=$_POST['name']; $tel=$_POST['tel']; $mobile=$_POST['mobile']; $topic=$_POST['topic']; $nouki=$_POST['nouki']; $filename=$_FILES["upfile"]["name"]; $upfilepass=$_FILES["upfile"]["tmp_name"]; $size= filesize($upfilepass); $busyo=htmlspecialchars($busyo); $name=htmlspecialchars($name); $tel=htmlspecialchars($tel); $mobile=htmlspecialchars($mobile); $topic=htmlspecialchars($topic); $nouki=htmlspecialchars($nouki); $filename=htmlspecialchars($filename); $upfilepass=htmlspecialchars($upfilepass); $size=htmlspecialchars($size); if($busyo=='') { print '(エラー)所属部署が入力されていません。<br />'; } else { print '所属部署 '; print $busyo; print '<br />'; } 以下 略・・・

  • puyopa
  • お礼率87% (459/525)

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

  • ベストアンサー
  • kichi8000
  • ベストアンサー率41% (658/1581)
回答No.2

これ使ってみます? http://jp.piliapp.com/php-syntax-check/

その他の回答 (1)

  • masatsan
  • ベストアンサー率15% (179/1159)
回答No.1

コードのどこかに(文字列ではなく)全角スペースが入っているとか。。。

関連するQ&A

  • PHP 画像アップロード 重複防止

    画像、ファイルをアップロードできるフォームを作成しています。 ---------------------- フォーム <FORM NAME="objform" action="yes.php" METHOD="POST" ENCTYPE="multipart/form-data"> <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="1000000"> <INPUT TYPE="file" NAME="img1" SIZE="40"><BR> <INPUT TYPE="submit" NAME="submit" VALUE="アップロードする!!"> </FORM> ーーーーーーーーーーーーーーーーーーーー yes.phpの中身 $updir = "./photo/"; $filename = $_FILES['upfile']['name']; //form の「upfile」の値 move_uploaded_file($_FILES['upfile']['tmp_name'], $updir.$filename); -------------------------- これでphoto のフォルダに格納されるようにしているのですが、 もし、同じファイル名でアップされた場合上書きされてしまいます。 IDをつけるか、もしくはその他の方法でファイル名が重複されないような設定にするにはどうすればよいでしょうか。 現在PHP勉強中です。 初歩的なことかもしれませんが、 よくわからないのでアドバイスを頂けると助かります。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • jQuery複数ファイルアップロード

    お世話になります。 jQuery Multiple File Upload Pluginを使って複数のファイルをアップロードしたいですがサーバー側でどのように受けたら良いか分からず困っています。 次のコードですと、アップロードするファイルが1個なら問題ないのですが、複数あるとに2番目以降のファイルの指定方法が分かりません。 http://javascript.webcreativepark.net/library/jquery_multiple_file_upload_pluginではname="upfile"が書かれておらずfile1[]、file2[]と読めると書いてあったのですができませんでした。 【html側】 <input type="file" name="upfile" class="multi" maxlength="5"/> 【サーバー側】※PHP print_r ( "アップロードファイル名 : " . $_FILES["upfile"]["name"] . "<BR>"); print_r ( "MIMEタイプ : " . $_FILES["upfile"]["type"] . "<BR>"); print_r ( "ファイルサイズ : " . $_FILES["upfile"]["size"] . "<BR>"); print_r ( "テンポラリファイル名 : " , $_FILES["upfile"]["tmp_name"] . "<BR>"); print_r ( "エラーコード : " . $_FILES["upfile"]["error"] . "<BR>");

    • ベストアンサー
    • PHP
  • コードの何が間違っているのか分からない(PHP)

    ●質問の主旨 コードの何が間違っているのかよくわからない。 (check.php)のファイルで、 print'<input type="hidden" name="nickname" value="'$nickname.'">'; の行がsyntaxerrorとして、返されるがなぜそうなるのか分からない (マニュアル本に記述して、スペルミスもチェックしているのですが) 何かお気づきのかた、ご教示願います。 ●質問の補足 添付の画像のように名前、メールアドレス、ご意見を入力してもらう フォームをとして作りました(index.html) すべてのフォームに入力がされているかどうかチェックし、 (check.php) サンクスページを返すようにしました (thanks.php) ●環境 Windows8 XAMMP(ローカル開発環境) ●コード (index.html) <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>PHPの基礎</title> </head> <body> <form method="post" action="check.php"> <p>あなたの名前を入力してください</p> <input name="nickname" type="text" style="width:100px"> <p>メールアドレスを入力してください</p> <input name="email" type="text" style="width:200px"> <p>ご意見をお聞かせください</p> <input name="goiken" type="text" style="width:300px"><br/> <input type="submit" value="送信"> </form> </body> </html> (check.php) <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>PHPの基礎</title> </head> <body> <?php $nickname = $_POST['nickname']; $email = $_POST['email']; $goiken = $_POST['goiken']; $nickname = htmlspecialchars($nickname); $email = htmlspecialchars($email); $goiken = htmlspecialchars($goiken); if ($nickname == '') { print '名前が入力されてません!<br/>'; } else { print 'ようこそ!'; print $nickname; print 'さま'; print '<br/>'; } if ($email == '') { print 'emailが入力されてません!<br/>'; } else { print 'メールアドレス'; print $email; print '<br/>'; } if ($goiken == '') { print 'ご意見が入力されてません!<br/>'; } else { print 'ご意見'; print $goiken; print '<br/>'; } if($nickname == '' || $email == '' || $goiken == '') { print'<form>'; print'<input type="button" onclick="history.back()" value="戻る">'; print'</form>'; } else { print'<form method="post" action="thanks.php">';   print'<input type="hidden" name="nickname" value="'$nickname.'">'; print'<input type="hidden" name="email" value="'.$email.'">'; print'<input type="hidden" name="goiken" value="'.$goiken.'">'; print'<input type="button" onclick="history.back()" value="戻る">'; print'<input type="submit" value="OK!">'; print'</form>'; } ?> </body> </html> (thanks.php) <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>PHPの基礎</title> </head> <body> <?php $nickname=$_POST['nickname']; $email=$_POST['email']; $goiken=$_POST['goiken']; print 'ご意見ありがとうございました!'; print $nickname; print '様<br/>'; print 'ご意見ありがとうございました<br/>'; print '頂いたご意見『'; print $goiken; print '』<br/>'; print $email; ?> </body> </html>

    • ベストアンサー
    • PHP
  • 【PHP】postで連想配列のキーを送信したい

    PHP初心者です。 (実は似たような質問を以前yahoo知恵袋さんで投げた者です) ファイルのアップロードフォームを作っています。 まず、セレクトボックスを作り、セレクトボックスで選んだ値によって、 アップロード先を分けたいと思っています。 セレクトボックスで「理科」を選んでアップロードしたファイルは フォルダ「001」に、セレクトボックスで「数学」を選んでアップロードした ファイルはフォルダ「002」に入る、いう具合です。 セレクトボックスを連想配列を使って作り、 フォルダ分けは連想配列のキーの値を使うことによって解決しようとして 下のように作ってみたのですがうまくいきません。 どうすればよいでしょうか? よろしくお願いします。 **アップロードフォーム** <select name="subjects" id="subjects"> <?php $subjects = array('001'=>'理科','002'=>'数学','003'=>'英語'=>'); foreach ($subjects as $subject) { print('<option value="'.$subject.'">'.$subject.'</option>'); } ?> </select> <form action="./upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="upfile" size="30px"/><br/> <input type="file" name="upfile" size="30px"/><br/> <input type="file" name="upfile" size="30px"/><br/> <button type="submit"> 送信</button> </form> **受信側** <?php $subjects = array('001'=>'理科','002'=>'数学','003'=>'英語'=>'); $keyNum = array_search($_POST['subjects'], $subjects); if( isset( $_FILES["upfile"] ) ) { foreach( $_FILES["upfile"]["error"] as $key => $error ) { if( $error == UPLOAD_ERR_OK ) { $tmp_name = $_FILES["upfile"]["tmp_name"][ $key ]; $name = $_FILES["upfile"]["name"][ $key ]; if (move_uploaded_file($tmp_name, "$keyNum/" . $name)); { echo $_FILES["upfile"]["name"] . "アップロード完了"; } } } } ?>

    • ベストアンサー
    • PHP
  • 画像アップ

    php初心者です 簡単な画像アップロードを付けたいと思っています それでアップだけはなんとかできたのですが、もう少し機能を付けたいです 付けたい機能は 1.拡張子を調べて限定したい。gif、jpg、pngの三つを許可したい 2.画像の横と縦の幅が指定した幅より大きければ、指定した幅まで縦横比維持で縮小 100*100 3.もう一つのディレクトリに、小さいサムネイルを作りたい。大きさは32*32です 4.拡張子はそのままにして画像の名前をリネームしたいです よろしくお願いします(_ _ <?php $img_name = $_FILES["upfile"]["name"]; $img_size = $_FILES["upfile"]["size"]; $img_type = $_FILES["upfile"]["type"]; if($_REQUEST["up"] != ""){ if($img_tmp != "" and $img_size <= 50000){ $img_message = "名前は: $img_name <br>サイズは: $img_size <br>MIMEタイプは: $img_type"; if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "files/" . $_FILES["upfile"]["name"])) { chmod("files/" . $_FILES["upfile"]["name"], 0604); print $_FILES["upfile"]["name"] . "をアップロードしました。"; } else { print "ファイルをアップロードできません。"; } } else { print "ファイルが選択されていません。"; } }else{ $size_error = "サイズが大きすぎます"; } } ?> <html> <head> <title>画像アップロード</title> </head> <body> <form name="form" action="" method="POST" ENCTYPE="MULTIPART/FORM-DATA"> <input name="upfile" type="file" size="40"> <input name="up" type="submit" value="アップロード"><hr> </form> <?php print($size_error); ?><?php print($img_message); ?> </body> </html>

    • ベストアンサー
    • PHP
  • javaからphpへのファイルアップロードで困っています

    クライアントからサーバへファイルをアップロードするJAVAプログラムを作成しているのですが、アップロードの処理が分からず困ってます。 処理の流れとしては、 HTML(クライアント)でファイルを指定し、 PHP(サーバ)でクライアントから指定されたファイルの受信処理を行う。 このHTML(クライアント)の部分をJAVAで作成しようと考えています。 HttpURLConnectionで接続までは作成できましたが、JAVAでHTMLの <input type="file" name="upfile"> の部分をどのようにコーディングするのか分かりません。 //PHP受信処理↓ $filename = $_FILES['upfile']['name']; if (move_uploaded_file($_FILES['upfile']['tmp_name'], $updir.$filename) == FALSE){ print("Upload failed"); print($_FILES['upfile']['error']); print("<b>失敗</b>"); } else { print("<b> $filename </b> uploaded"); print("<b>成功</b>"); どなたかご存知の方がいらっしゃいましたら御教授お願いします。

  • PHPでファイルアップ

    はじめまして。 PHPを勉強し始めたとこなのですが、いきなり分かりません。 ファイルの中身を見ないで単純なアップが目的です。 ファイルの名前をファイルの名前: html :uploader.html PHP:p141php としています。 アップしたいフォルダは./upフォルダです。 本を見て作っているのですが、何処が間違えているのかもわかません。 何方か教えて下さい。 ソースは uploader.htmlが <!-- saved from url=(0022)http://internet.e-mail --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <title>アップロード</title> </head><body> <form method="post" enctype="multipart/form-data" action="p141.php"> <input type="file" name="upfile"> <input type="submit" value="uploadする"> </form> </body> </html> で p141.phpが <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <title>練習</title> </head> <body> <p> file uploader </p> <?php $updir = "./up/"; $filename = $_FILES['upfile']['name']; if (move_uploaded_file($_FILES['upfile']['tmp_name'], $filename) == FALSE){ print("Upload failed..."); print($_FILES['upfile']['error']); } else { print("<b>" .$filename. "</b> uploaded!"); } ?> </body> </html> です。 PHPがいけるところのサーバーを借りているので細かい設定や 何のソフトを使っているかは分かりません。 OSはLIUNXです。 開発環境はOSがWin2kで秀丸を使って記述しています。

    • ベストアンサー
    • PHP
  • MySQLに保存した画像を表示したい

    <環境> PHP:4.3.8 MySQL:4.0.16 はじめまして、PHPを始めて駆け出しの者です。 MySQLに保存した画像を表示したいのですが なかなかうまくいきません。 なにかきっかけとなればと思い、書き込みをします。 どうぞご教授ください。 MySQLに画像を保存する事もやっとの事で出来たのですが、 ちゃんと保存されているか確認するため画像を表示してみよう と試みたのですが、またそこで壁にぶち当たってしまいました。 ネットの各所で検索し調べ、カタチまでは出来たのですが 肝心の画像が「×(バツ印)」になっていて表示出来ません。 +++img_upload.php+++ <?php if ($_POST["submit"]!=""){ if ($_POST["file_name"]=="none"){ print("ファイル名が入力されていません。<BR>\n"); exit; } $file_name = $_POST["file_name"]; if ($_FILES["upfile"]["tmp_name"]=="none"){ print("ファイルのアップロードができませんでした。<BR>\n"); exit; } $fp = fopen($_FILES["upfile"]["tmp_name"], "rb"); if(!$fp){ print("アップロードしたファイルを開けませんでした"); exit; } $imgdat = fread($fp, filesize($_FILES["upfile"]["tmp_name"])); fclose($fp); print("ファイルサイズ:{$_FILES["upfile"]["size"]}<BR>\n"); $len = strlen($imgdat); print("データ長 = $len<BR>"); $imgdat = addslashes($imgdat); $con = mysql_connect("***.***.***.***", "*****", "*****"); if (!$con){ print("MySQLへの接続に失敗しました"); exit; } if (!mysql_select_db("*****")){ print("データベースへの接続に失敗しました"); exit; } $encoded_file = base64_encode($imgdat); $sql = "INSERT INTO image (img_data) values ('$encoded_file')"; $result = mysql_query($sql); if (!$result){ print("SQLの実行に失敗しました<BR>"); print(mysql_errno().": ".mysql_error()."<BR>"); exit; } mysql_close($con); } ?> +++img_display.php+++ <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <TITLE>データベースへの画像の表示</TITLE> </HEAD> <BODY> <P>ファイルの表示</P> <FORM method="POST" enctype="multipart/form-data" action="img_display.php"> <INPUT type="hidden" name="MAX_FILE_SIZE" value="1048576"> 画像のファイルIDを入力してください<BR> <INPUT type="text" name="log_id"><BR> <INPUT type="submit" name="submit" value="送信"> <INPUT type="reset" name="reset" value="リセット"> </FORM> <?php if ($_POST["submit"]!=""){ $log_id = $_POST['log_id']; echo "<img src=\"get_image.php?log_id=" . $log_id . "\">"; } ?> </BODY> </HTML> +++get_image.php+++ <?php if ($_GET["log_id"]!=""){ $log_id = $_GET['log_id']; $con = mysql_connect("***.***.***.***", "*****", "*****"); if (!$con){ print("MySQLへの接続に失敗しました"); exit; } if (!mysql_select_db("******")){ print("データベースへの接続に失敗しました"); exit; } $sql = "SELECT img_data FROM image WHERE log_id='".$log_id."'"; $result = mysql_query($sql); if (!$result){ print("SQLの実行に失敗しました<BR>"); print(mysql_errno().": ".mysql_error()."<BR>"); exit; } $row = mysql_fetch_array($result); mysql_close($con); $decoded_file = base64_decode($row[1]); mb_http_output("pass"); header("Content-type: image/jpeg"); header("Content-Disposition: inline; filename=image.jpg"); echo $row[0]; } ?> DBのほうのテーブルには、「log_id」と「img_data」があります。 すみませんが、よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHP 画像添付フォームに関しての質問です。

    PHP 画像添付フォームに関しての質問です。 http://okwave.jp/qa/q4891926.html 以前質問させて頂いた内容でフォームを作成しています。 申込html→finish.php の場合はうまくいきます。 申込html→確認→finish.php にするとうまくいきません。 可能であれば、確認画面でアップした画像を表示できればと思っております。 何かアドバイスして頂けると助かります。 申込html <form method="post" action="kakunin.php" enctype="multipart/form-data"> <input type="hidden" name="max_file_size" value="1000000"> <input type="hidden" name="upfile" value="%%upfile%%"> <input name="upfile" id="upfile" type="file" size="50" value="%%upfile%%"> 確認html <form method="post" action="finish.php"> <td class="border5px-fff">%%upfile%%<input type="hidden" name="upfile" value=""></td> finish.php $updir = "./photo/"; $filename = $_FILES['upfile']['name']; //form の「upfile」の値 //ファイルを指定 $id_file = "id.dat"; //ファイルを開く $fp = fopen($id_file,"r"); $id = fgets($fp); fclose($fp); //ファイルの数字に1を足します。 $id = $id + 1; $fp = fopen($id_file,"w"); //保存します。 fputs($fp, $id); fclose($fp); //名前の前に番号を追記します。 //$filename = 'ID_'.$id.'_'.$filename; //番号のみ $filename = $id.'.jpg'; move_uploaded_file($_FILES['upfile']['tmp_name'], $updir.$filename);

    • ベストアンサー
    • PHP
  • PHP重複ファイルに連番をつけてアップロードしたい

    ファイルをアップロードするページをPHPで作りました。 testup.htmlでファイルを選択し、 testup.phpでファイルをサーバーにアップする 簡単な仕組みです。 アップロードには成功したのですが、 同じファイル名のデータがある場合、上書きされてしまいます。 上書きされずに、連番等をファイル名に追加してアップロード できればと思いましたが、方法がわかりません。 当方PHPの初心者です。何卒お力をお貸しください。 よろしくお願い致します。 ソースを記入しておきます。 「testup.html」 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>test</title> </head> <body> テストアップローダー<br> <form action="testup.php" method="post" enctype="multipart/form-data"> アップロードするファイルを選択してください。 <br> <input type="file" name="upfile" size="30"><br> <br> <input type="submit" value="アップロード"> <label>  <input type="reset" name="button" id="button" value="リセット" /> </label> </form> </body> </html> 「testup.php」 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>test</title> </head> <body> <p><?php if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "files/" . $_FILES["upfile"]["name"])) { chmod("files/" . $_FILES["upfile"]["name"], 0777); echo $_FILES["upfile"]["name"] . "をアップロードしました。"; echo "<br><br>ありがとうございました。"; echo "<br><FORM><INPUT TYPE=button value=閉じる onClick=window.close()></FORM>"; } else { echo "ファイルをアップロードできません。"; echo "<br>お手数ですが前の画面に戻ってもう一度ファイルをアップロードしてください。"; echo "<br><FORM><INPUT TYPE=button value=前のページに戻る onClick=JavaScript:history.back()></FORM>"; } } else { echo "ファイルが選択されていません。"; echo "<br>お手数ですが前の画面に戻ってファイルを選択してください。"; echo "<br><FORM><INPUT TYPE=button value=前のページに戻る onClick=JavaScript:history.back()></FORM>"; } ?></p> </body> </html>

    • ベストアンサー
    • PHP