MAMPで簡易掲示板を作成し、テストをしているところで
画像のアップロードには成功しましたが、表示がうまくされません。
404エラーが発生しました。
しょうもないミスだとは思いますが、解決方法がわかりません。
解決方法を教えてください。
g_logon.html
↓
g_logon2.php
↓
g.php 一覧表示画面
↓
g_up.php 画像アップロード
↓
g_up_set.php 画像アップロード結果
↓
g.php 一覧表示画面 アップロード画像確認できない 小さい四角でハテナマークが表示される
クリックすると下記の404エラーが表示される
画像アップロード結果から画像がうまく表示されません。
ディレクトリのパスは/Applications/MAMP/htdocs/内に
htdocs/g_main/とhtdocs/gz_img/があり
上記のファイルは全て/g_mainに保存されているのですが
画像ファイルは/gz_imgにアップロード後ちゃんと移されているのを確認しています。
Not Found The requested URL /Applications/MAMP/htdocs/gz_img/20180103230252img.jpg was not found on this server.
php
1g.php 2 3<?php 4 session_start(); 5?> 6 7<!doctype html> 8<html> 9<head> 10<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 11<title>ようこそクリエイティブ写真館 desu('_')へ!</title> 12</head> 13<body> 14 15<?php 16 if(isset($_SESSION['us']) && $_SESSION['us'] != null){ 17?> 18 19<p style='color: red'>クリエイティブ写真館 desu('_')へ!</p> 20<p><a href='g_up.php'>アップロード</a><br> 21<a href='g_logoff.php'>ログオフ</a></p> 22 23<?php 24 require_once("db_init.php"); 25 $ps=$db->query('select * from table1 order by ban desc'); 26 while($r=$ps->fetch()){ 27 $tg=$r['gaz']; 28 print "<p>{$r['ban']}【投稿者:{$r['nam']}】{$r['dat']}<br>" 29 .nl2br($r['mes']) 30 ."<br><a href='/Applications/MAMP/htdocs/gz_img/$tg' target='_blank'> 31 <img src='/Applications/MAMP/htdocs/gz_img/thumb_$tg'></a><hr></p>"; 32 } 33?> 34 35<p><a href='g_up.php'>アップロード</a><br> 36<a href='g_logoff.php'>ログオフ</a></p> 37 38<?php 39 }else{ 40 session_destroy(); 41 print "<p>ちゃんとログオンしてね!<br> 42 <a href='g_logon.html'>ログオン</a></p>"; 43 } 44?> 45 46</body> 47</html>
php
1g_up.php 2 3<?php 4 session_start(); 5?> 6 7<!doctype html> 8<html> 9<head> 10<meta http_equiv="Content-Type" content="text/html; charset=UTF-8"> 11<title>ようこそクリエイティブ写真館 desu('_')へ!</title> 12</head> 13<body> 14<p style='color:red'>クリエイティブ写真館 desu('_')</p> 15 16<?php 17 if(isset($_SESSION['us'])&& $_SESSION['us']!=null){ 18?> 19 20<p>投稿よろしくお願いします!</p> 21<form enctype='multipart/form-data' action='g_up_set.php' method='post'> 22名前<br> 23<input type='text' name='myn'><br> 24メッセージ<br> 25<textarea name='mym' rows='10' cols='70'></textarea><br> 26<input type='file' name='myf'> 27<p>送信できるのは1MBまでのJPEG画像だけです!<br>また展開後のメモリ消費が多い場合アップロードできません。</p> 28<input type='submit' value='送信'> 29</form> 30<p><a href='g.php'>一覧表示へ</a></p> 31 32<?php 33 }else{ 34 session_destroy(); 35 print "<p>ちゃんとログインしてね!<br><a href='g_logon.html'>ログオン</a></p>"; 36 } 37?> 38 39</body> 40</html>
php
1php_up_set.php 2 3<?php 4 session_start(); 5?> 6 7<!doctype html> 8<html> 9<head> 10<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 11<title>ようこそクリエイティブ写真館 desu('_')へ!</title> 12</head> 13<body> 14 15<?php 16 if(isset($_SESSION["us"])&& $_SESSION["us"] !=null){ 17 $file=$_FILES['myf']; 18 19 if($_POST['myn']<>""&& $_POST['mym']<>""&& $file['size']>0 20 && ($file['type']=='image/jpeg'|| $file['type']=='image/pjpeg') 21 && (strtolower(mb_strrchr($file['name'],'.',false))==".jpg")){ 22 23 if($file['size']>1024*1024){ 24 unlink($file['tmp_name']); 25?> 26 27<p>アップするファイルのサイズは1MB以下にしてください</p> 28<p><a href='g_up.php'>アップロード画面に戻る</a></p> 29 30<?php 31 }else{ 32 //アップロードされた画像ファイルを移動 33 $ima=date('YmdHis'); 34 $fn=$ima.$file['name']; 35 move_uploaded_file($file['tmp_name'],'/Applications/MAMP/htdocs/gz_img/'.$fn); 36 37 $my_nam=htmlspecialchars($_POST['myn'],ENT_QUOTES); 38 $my_mes=htmlspecialchars($_POST['mym'],ENT_QUOTES); 39 40 //サムネイルの作成 41 $motogazo=imagecreatefromjpeg("/Applications/MAMP/htdocs/gz_img/$fn"); 42 list($w,$h)=getimagesize("/Applications/MAMP/htdocs/gz_img/$fn"); 43 $new_h=200; 44 $new_w=$w*200/$h; 45 $mythumb=imagecreatetruecolor($new_w,$new_h); 46 imagecopyresized($mythumb,$motogazo,0,0,0,0,$new_w,$new_h,$w,$h); 47 imagejpeg($mythumb,"/Applications/MAMP/htdocs/gz_img/thumb_$fn"); 48 49 //サムネイルの表示 50 print "<p>".$file['name']."のアップロードに成功!<br> 51 <img src='/Applications/MAMP/htdocs/gz_img/thumb_$fn'></p>"; 52 53 //データベースに追加 54 $c_ip=$_SERVER['REMOTE_ADDR']; 55 $c_host=gethostbyaddr($c_ip); 56 require_once("db_init.php"); 57 58 $ps=$db->prepare("insert into table1 (nam,mes,ope,gaz,dat,ip,host) values (:v_n,:v_m,1,:v_g,:v_d,'$c_ip','$c_host')"); 59 $ps->bindParam(':v_n',$my_nam); 60 $ps->bindParam(':v_m',$my_mes); 61 $ps->bindParam(':v_g',$fn); 62 $ps->bindParam(':v_d',$ima); 63 $ps->execute(); 64 print "<a href='g.php'>一覧表示へ</a>"; 65 } 66 }else{ 67?> 68 69<p>名前とメッセージを入力しJPEGファイルを選択してください<br><a href='g_up.php'>再度アップロード</a></p> 70 71<?php 72 } 73 }else{ 74 session_destroy(); 75 print "<p>ちゃんとログオンしてね!<br><a href='g_logon.html'>ログオン</a></p>"; 76 } 77?> 78 79</body> 80</html>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/04 06:20