0

PHP で画像をアップロードするネイティブな方法を試してみましたが、友人が class.upload.php ライブラリを提案してくれましたが、それでも以前と同じ結果が得られました。ブラウザが画像を見つけられないことを意味する小さなアイコンなしで特定の画像しかアップロードできませんが、奇妙なことに、「無効な」画像を自分のコンピューターにダウンロードすると、それらは問題ありません。画像の約 50% は実際に機能しますが、残りは適切なサイズを表示するだけで、画像は表示されません。これが私のコードです(私のhtmlフォームには、次のファイル入力タイプがありますfilename

$handle = new upload($_FILES['filename']);

if ($handle->uploaded)   
{
   if ($file_src_size < 20000)
   {
        $handle->file_new_name_body = "test";  
        $handle->image_convert = 'jpg';
        $handle->process('/');  

        echo "<img src = \"test.jpg\" />";
    }
    else echo "Files must be 20 kb or under";
}
else echo "Upload failed, please try again";
4

2 に答える 2

1

画像をダウンロードしてローカルで再表示できるという事実は、アップロード スクリプトに問題がないことを示唆しています。別の問題として、画像が Web 表示用に適切に保存されていない可能性があります。たとえば、ファイルの末尾が .jpg でローカルで表示できるからといって、それがブラウザで認識できるとは限りません。CMYK jpeg は多くのブラウザで表示できません。

于 2012-06-07T22:30:18.807 に答える
0

何か問題が発生しているため、コードをデバッグする必要があります。コンピューターにアクセスできる人だけがその理由を知ることができます。

1) 使用しているライブラリにエラー検出コードがある

if ($handle->processed) {
       echo 'image resized';
       $handle->clean();
} else {
   echo 'error : ' . $handle->error;
}

2) 処理された画像データを見て、ブラウザがそれを画像として解析できない理由を理解できるはずです。無効な画像の URL を教えていただければ、何が問題なのかを教えていただけます。

3) 「process('/');」を呼び出してルート ディレクトリにファイルを書き込む 悪い。「index.php」と呼ばれる画像をアップロードするときに潜在的な問題が発生しないように、他の人からのファイルを保持するディレクトリを作成する必要があります。

于 2012-06-16T01:39:20.983 に答える