質問編集履歴

2 追記タイトル変更

masa.net

masa.net score 5

2018/03/22 07:35  投稿

move_uploaded_fileでロリポップで画像が表示されない
print 文で画像が表示できない。
move_uploaded_fileでロリポップで画像が表示されない。
わからないこと
ロリポップでは使えないのか?
画像を表示させようとするとリンク切れみたいな表示なる。
パスの設定が間違っているのかわからない。
画像ファルダは同じ階層にあります。
画像が画面に表示されてほしい。
画像サイズは小さいので関係ないと思います。
 
追記  
move_uploaded_fileは動いています。  
パスを指定できるので混乱してわけのわからないこと書いてしまいました。  
print 文で画像が表示できないのです。  
何も表示されないわけではなくリンク切れみたいなマークが表示されます。  
ソース
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.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>
<?php
$pro_name=$_POST['name'];
$pro_price=$_POST['price'];
$pro_gazou=$_FILES['gazou'];
$pro_name=htmlspecialchars($pro_name);
$pro_price=htmlspecialchars($pro_price);
if($pro_name=='')
{
   print '商品名が入力されていません。<br />';
}
else
{
   print '商品名:';
   print $pro_name;
   print '<br />';
}
if(preg_match('/^[0-9]+$/',$pro_price)==0)
{
   print '価格をきちんと入力してください。<br />';
}
else
{
   print '価格:';
   print $pro_price;
   print '円<br />';
}
if($pro_gazou['size']>0)
{
   if($pro_gazou['size']>1000000)
   {
       print '画像が大き過ぎます';
   }
   else
   {
       move_uploaded_file($pro_gazou['tmp_name'],'/gazou'.$pro_gazou['name']);
       print '<img src="/gazou'.$pro_gazou['name'].'">';
       print '<br />';
   }
}
if($pro_name=='' || preg_match('/^[0-9]+$/',$pro_price)==0 || $pro_gazou['size']>1000000)
{
   print '<form>';
   print '<input type="button" onclick="history.back()" value="戻る">';
   print '</form>';
}
else
{
   print '上記の商品を追加します。<br />';
   print '<form method="post" action="pro_add_done.php">';
   print '<input type="hidden" name="name" value="'.$pro_name.'">';
   print '<input type="hidden" name="price" value="'.$pro_price.'">';
   print '<input type="hidden" name="gazou_name" value="'.$pro_gazou['name'] .'">';
   print '<br />';
   print '<input type="button" onclick="history.back()" value="戻る">';
   print '<input type="submit" value="OK">';
   print '</form>';
}
?>
</body>
</html>
ーーーーーーーーーーーーーーーーーー
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.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>
商品追加<br />
<br />
<form method="post" action="pro_add_check.php" enctype="multipart/form-data">
商品名を入力してください。<br />
<input type="text" name="name" style="width:200px"><br />
価格を入力してください。<br />
<input type="text" name="price" style="width:50px"><br />
画像を選んでください。<br />
<input type="file" name="gazou" style="width:400px"><br />
<br />
<input type="button" onclick="history.back()" value="戻る">
<input type="submit" value="OK">
</form>
</body>
</html>
ーーーーーーーーーーーーーーー
気付けばプロ並みphpの116ページをロリポップのサーバで作成してます。
サンプルをコピペしたけど動かない。
本では動いた画面がある。
本はローカル環境。
本はローカル環境。
  • PHP

    31175 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1 追記

masa.net

masa.net score 5

2018/03/21 22:54  投稿

move_uploaded_fileでロリポップで画像が表示されない
move_uploaded_fileでロリポップで画像が表示されない。
わからないこと
ロリポップでは使えないのか?
画像を表示させようとするとリンク切れみたいな表示なる。
パスの設定が間違っているのかわからない。
画像ファルダは同じ階層にあります。
画像が画面に表示されてほしい。
画像サイズは小さいので関係ないと思います。
ソース
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.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>
<?php
$pro_name=$_POST['name'];
$pro_price=$_POST['price'];
$pro_gazou=$_FILES['gazou'];
$pro_name=htmlspecialchars($pro_name);
$pro_price=htmlspecialchars($pro_price);
if($pro_name=='')
{
   print '商品名が入力されていません。<br />';
}
else
{
   print '商品名:';
   print $pro_name;
   print '<br />';
}
if(preg_match('/^[0-9]+$/',$pro_price)==0)
{
   print '価格をきちんと入力してください。<br />';
}
else
{
   print '価格:';
   print $pro_price;
   print '円<br />';
}
if($pro_gazou['size']>0)
{
   if($pro_gazou['size']>1000000)
   {
       print '画像が大き過ぎます';
   }
   else
   {
       move_uploaded_file($pro_gazou['tmp_name'],'/gazou'.$pro_gazou['name']);
       print '<img src="/gazou'.$pro_gazou['name'].'">';
       print '<br />';
   }
}
if($pro_name=='' || preg_match('/^[0-9]+$/',$pro_price)==0 || $pro_gazou['size']>1000000)
{
   print '<form>';
   print '<input type="button" onclick="history.back()" value="戻る">';
   print '</form>';
}
else
{
   print '上記の商品を追加します。<br />';
   print '<form method="post" action="pro_add_done.php">';
   print '<input type="hidden" name="name" value="'.$pro_name.'">';
   print '<input type="hidden" name="price" value="'.$pro_price.'">';
   print '<input type="hidden" name="gazou_name" value="'.$pro_gazou['name'] .'">';
   print '<br />';
   print '<input type="button" onclick="history.back()" value="戻る">';
   print '<input type="submit" value="OK">';
   print '</form>';
}
?>
</body>
</html>
ーーーーーーーーーーーーーーーーーー
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.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>
商品追加<br />
<br />
<form method="post" action="pro_add_check.php" enctype="multipart/form-data">
商品名を入力してください。<br />
<input type="text" name="name" style="width:200px"><br />
価格を入力してください。<br />
<input type="text" name="price" style="width:50px"><br />
画像を選んでください。<br />
<input type="file" name="gazou" style="width:400px"><br />
<br />
<input type="button" onclick="history.back()" value="戻る">
<input type="submit" value="OK">
</form>
</body>
</html>
ーーーーーーーーーーーーーーー
喜助ばプロ並みphpの116をロリポップのサーバで作成してます。
気付けばプロ並みphpの116ページをロリポップのサーバで作成してます。
サンプルをコピペしたけど動かない。
本では動いた画面がある。
本はローカル環境。
  • PHP

    31175 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る