0

imagejpg() を使用してディレクトリに画像を保存しようとしていますが、画像をディレクトリに保存する代わりに、画像のコードを画面に表示します。次のようになります。

ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC      $.' ",#(7),01444'9=82<.342ÿÛC     2!!22222222222222222222222222222222222222222222222222ÿÀ¿”"ÿÄ   ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚  %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ    ÿĵw!1AQaq"2B‘¡±Á  #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ?÷Ú(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ÑEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE””ŒØ&lt;‘\Œ>&Øxy­ [»ÞAP~TúÐœ¬w{Âõ#¤Ô2_ZÆp×1þø¯›õOëúÄŒf¿x¢=#‡åúÖH½šVËK#“Ý›?©ªå#ÚTGw¿êæþŒ L9æ¾]·ÔîíhndˆŽ…Šíü=ñ3P±dŠùÖêS÷… ªÙEbé(Òõ¨Á¶¹@ýÑŽ­r*mbÓ¸´QE (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ŒàQžµ…â/i¾‰ZúVàìXÓŠmÙ M%©ÇüOñàÑ`:^Ÿ ût«ûÇýRû{׃I+Ë#K+–fûÄœ“Z:íèÔµ»»¯ŸÊÌ»ÎN3Æk4FÇ'«ÔúÕ¸¸hу’ø°ß3œF^æ¥\mQµ{zÕG}ÄAéLCdòhQv95eAøž*©æ“ð«MzëÅ]‚öâÍÃÇ!V9Sƒ^‰á_ŠþNË]cs'Ýc•úŽõäïv )È&IÄúÊÃQ´Ô­VâÒt–&amp;èÈsVëæ x£SðÅêÉo+Iâcò‘ý+è_x‚×Ä:Tw¶­œü®‡ª·¥KF±Íš)3šZE…Q@%-QIK@Q@RPÑEQEQE%-RPÑIE-”´QEQE%-RPÑEQEQIE-Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@”É$Xã.̯ROJ:Ø Zίm¢é’ÞÝ8Xãû“ØW;&ñ ψµyofbñg…^·¾"xÀëÚ£ÚÚÊM„ ´c£ŸïW ÔçµzØJ«š[œêóh…(‚{TrFV-‘œ«[ð©q°sÔÓCãšê©N3ѣɢ›2;ÓcBÍœUý‹7NéQÊcHaµ‡pkέ†qÖ;0¨žä!QŽ•XÎOzlîs×9éP)%«Sd]€–lšØ´dSóVI°TËy¶3«X¢ž0­t?ü@Ú‰ÚG"Òçëè{óë\­ùÛÁ« rL‹ %H9ÈëCÔKF}f‡* >¹ké®øbÚbÀÍòåç"ºaPt'qh¢ŠQE”´PEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPE%-QI@E”´RRÐEPEPEPEPEPEPEPE†€ ò¿Š26e!H¿¾+ÕTöú×aãÃá­KŒƒpáîkæû»¹¯ï%¹¹s$²9gcÜ×n‡;æg5z¶VEvÉäž¼šEÇ^Ôub; BkÖhá#žy¨p[OcžJˆri€(¯=j¬åfùô4û™‚‚gî.ÿ­Lô]Hµô$$±,‘°*ãp"¾J8È®×Ãõm4¶3 `^È2õ¡¢£+BÒW¤üOÓ®J¥ìf?ļ¯ÿZ»;-RÊþ=ö·1Ê¿ì‘ScE$Ë”QE"…¢’–€ ))h¢ŠJZ)( ¢’–€ ))h¢Š(¢’ŠZ(¢€ ))h¢’–€ (¢€ (¢€ ))h¢’ŠZ(¤ ¢’–€ ))h¢’ŠZ(¢€–’ŠZ(¤ ¢ŠJZJ( ¢Š(¢Š(¢ŠJZ(¢€–Š(¢Š(¢Š(öª÷—QYÚIq<‚8ãRÅ`Zœœ×ŽüVñy9Ñ-$Ër¿ú iJ›©.TEIò+œOŒüO/

画像をアップロードするために使用する関数は次のとおりです。

 function resize( $file, $width = 0, $height = 0, $proportional = false, $output='file', $delete_original = false, $use_linux_commands = false )
  {
    if ( $height <= 0 && $width <= 0 ) {
      return false;
    }

    $info = getimagesize($file);
    $image = '';

    $final_width = 0;
    $final_height = 0;
    list($width_old, $height_old) = $info;

    if ($proportional) {
      if ($width == 0) $factor = $height/$height_old;
      elseif ($height == 0) $factor = $width/$width_old;
      else $factor = min ( $width / $width_old, $height / $height_old);   

      $final_width = round ($width_old * $factor);
      $final_height = round ($height_old * $factor);

    }
    else {
      $final_width = ( $width <= 0 ) ? $width_old : $width;
      $final_height = ( $height <= 0 ) ? $height_old : $height;
    }

    switch ( $info[2] ) {
      case IMAGETYPE_GIF:
        $image = imagecreatefromgif($file);
      break;
      case IMAGETYPE_JPEG:
        $image = imagecreatefromjpeg($file);
      break;
      case IMAGETYPE_PNG:
        $image = imagecreatefrompng($file);
      break;
      default:
        return false;
    }

    $image_resized = imagecreatetruecolor( $final_width, $final_height );

    if ( ($info[2] == IMAGETYPE_GIF) || ($info[2] == IMAGETYPE_PNG) ) {
      $trnprt_indx = imagecolortransparent($image);

      // If we have a specific transparent color
      if ($trnprt_indx >= 0) {

        // Get the original image's transparent color's RGB values
        $trnprt_color    = imagecolorsforindex($image, $trnprt_indx);

        // Allocate the same color in the new image resource
        $trnprt_indx    = imagecolorallocate($image_resized, $trnprt_color['red'], $trnprt_color['green'], $trnprt_color['blue']);

        // Completely fill the background of the new image with allocated color.
        imagefill($image_resized, 0, 0, $trnprt_indx);

        // Set the background color for new image to transparent
        imagecolortransparent($image_resized, $trnprt_indx);


      } 
      // Always make a transparent background color for PNGs that don't have one allocated already
      elseif ($info[2] == IMAGETYPE_PNG) {

        // Turn off transparency blending (temporarily)
        imagealphablending($image_resized, false);

        // Create a new transparent color for image
        $color = imagecolorallocatealpha($image_resized, 0, 0, 0, 127);

        // Completely fill the background of the new image with allocated color.
        imagefill($image_resized, 0, 0, $color);

        // Restore transparency blending
        imagesavealpha($image_resized, true);
      }
    }

    imagecopyresampled($image_resized, $image, 0, 0, 0, 0, $final_width, $final_height, $width_old, $height_old);

    if ( $delete_original ) {
      if ( $use_linux_commands )
        exec('rm '.$file);
      else
        @unlink($file);
    }

    switch ( strtolower($output) ) {
      case 'browser':
        $mime = image_type_to_mime_type($info[2]);
        header("Content-type: $mime");
        $output = NULL;
      break;
      case 'file':
        $output = $file;
      break;
      case 'return':
        return $image_resized;
      break;
      default:
      break;
    }

    switch ( $info[2] ) {
      case IMAGETYPE_GIF:
        imagegif($image_resized, $arquivo_real);
      break;
      case IMAGETYPE_JPEG:
        imagejpeg($image_resized, $arquivo_real);
      break;
      case IMAGETYPE_PNG:
        imagepng($image_resized, $arquivo_real);
      break;
      default:
        return false;
    }

    return true;
  }

また、コードを少し変更すると、「許可が拒否されました」と表示されることがあります。すでに Chmod 0777 を試しましたが、どちらも機能していません。

4

0 に答える 0