-1
<?php
$file= $_FILES["file"]["name"];//file selected in form 
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
    echo "Type: " . $_FILES["file"]["type"] . "<br>";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";


      move_uploaded_file($_FILES["file"]["tmp_name"],
      "c:/EasyPHP-12.1/www/new website/upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "c:/EasyPHP-12.1/www/new website/upload/" . $_FILES["file"]["name"];
      if(($_FILES['file']['size'] >0))
        {echo 'imagetrue';$con=mysql_connect('localhost','abc','YES') or die ("con");;
                    $db=mysql_select_db("website",$con) or die ("db");
                    $query=mysql_query("insert into website.picture (imagew) values ('$file')") or die('query'); //storing in db}
      //echo $_FILES['file']['error'] ;

      $query2= mysql_query("select * from website.picture");
$res=mysql_fetch_array($query2);
foreach($res as $row){ 
$str = "c:/EasyPHP-12.1/www/new website/upload/ ".$row['imagew'];
echo '<img src="'.$str.'" alt="no">' ;}

?>

このスクリプトを使用して画像を保存し、ウェブページに表示していますが、空のサムネイルしか表示されません...

4

2 に答える 2

1

c:/ EasyPHP-12.1 / www / new website /upload/のような絶対パスの使用については非常に疑わしいと思います

あなたがそのページにアクセスしてhttp://127.0.0.1/new-websiteいる場合(私はあなたがそうだと思います-または同様のもの)、Windowsシステムのパス名を持っていることは問題になる可能性があります-ブラウザはそのようなローカルファイルシステムを読み取ることさえできますか?

また、別のサーバーに移動する場合は、移植性が非常に低くなります。

$ str='upload/'.$row['imagew'];をお勧めします。したがって、これは(私が推測する)でホストされているドキュメント127.0.0.1/new website/image-viewer.php(またはあなたがそれを呼んだもの)に関連しています

于 2013-01-31T19:47:56.383 に答える
0

Check the return value of move_uploaded_file() - if it's false then it has failed. If that's failing try using the relative path :

move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);

This again presumes your script is sitting in 127.0.0.1/new-website

EDIT - NOTE ::: Is your form using enctype="multipart/form-data" ? If it's not then the images never get to the server !

于 2013-01-31T20:08:38.327 に答える