5

Jquery Jcrop pluginを使用して、一度に 1 つの画像をトリミングする画像トリミング スクリプトがあります。今、私はより多くの画像をアップロードし、for ループを使用して 1 つずつトリミングしたいと考えています。

これを行う最善の方法は何ですか?

入力フィールドを複数に設定して、複数をアップロードできるようにしました。

編集:

以下のコードを と で編集しまし$maxcount。そして、私はそれを間違っていると思います。どうすれば修正できるので、クロップをクリックすると、次々とクロップされます。

これは私のuploaded.phpです:

    <?php 
         session_start();
         $max = count($_FILES['userfile']['name']);
         for($i = 0; $i < $max; $i++){
            $target = $_FILES['file'][$i];
         }

         $target = "data/uploads/"; 
         $target = $target . basename( $_FILES['filename']['name']) ; 
         $_SESSION['target_path'] = $target;

         $ok=1; 
         if(move_uploaded_file($_FILES['filename']['tmp_name'], $target)) 
         {
             echo "De afbeelding *". basename( $_FILES['filename']['name']). "* is geupload naar de map 'uploads'";
         } 
         else 
         {
             echo "Sorry, er is een probleem met het uploaden van de afbeelding.";
         } 
    ?> 

ありがとう!

4

2 に答える 2

1

いくつかのことを確認する必要があります

1) ファイルをアップロードするには、次を参照してください: http://php.net/manual/en/features.file-upload.multiple.php - 具体的input name="userfile[]"には HTML で、サーバー上のファイルは次のように表示されます。$_FILES['userfile']['name'][0],...,$_FILES['userfile']['name'][N]

2)move_uploaded_file()ファイルが有効であることを確認するためのセキュリティチェックです。それなしで家を出ないでください:-)

3)imagemagickライブラリ ( http://php.net/manual/en/imagick.cropimage.php ) をお勧めします。Jcrop のデモでは GD ライブラリを使用していますが、imagemagick を見る価値はあります。

4) 最後に、すべてが失敗した場合print_r($variable)は、ファイルがサーバーに到達していることを確認するために使用します。

5) 書き込み不可の /tmp フォルダー、ディスクがいっぱい、php.ini のアップロード サイズ制限、Web サーバーのビルトイン タイムアウトなどのシステム管理の問題である可能性があります。phpinfo() をチェックすることも役立ちます

于 2013-03-21T06:19:51.007 に答える
1

私はあなたがこのようなものがもっと欲しいと思います:

<?php 
session_start();

$upload_dir = "data/uploads/"; 
for($i = 0; $i < 5; $i++){
     $target = $upload_dir . basename( $_FILES['file']['name'][$i]);
     if(move_uploaded_file($_FILES['file']['tmp_name'][$i], $target)) {
         echo "De afbeelding *". basename( $_FILES['file']['name'][$i]). "* is geupload naar de map 'uploads'";
     } else {
         echo "Sorry, er is een probleem met het uploaden van de afbeelding.";
     }
}
于 2013-03-18T06:04:19.597 に答える