当我从外部文件调用它时,使用 crop php 调整图像大小时出现问题不在在线服务器上显示图像

Problem resizing image with crop php when I call it from external file don't show the image on online server

这是包含裁剪和页眉示例的文件。

redimensionador.php

<?php
//Redimensionador

$nombre_archivo = "ajo_tradiciones.jpg";
$rutaCarpetas = "views/images/$nombre_archivo";

$img = imagecreatefromjpeg($rutaCarpetas);
$imgs = getimagesize($rutaCarpetas);


$w = $imgs[0];
$h = $imgs[1];


$escala_w = 70/$w;
$escala_h = 70/$h;

$nuevo_ancho = floor($w*$escala_w);
$nuevo_alto = floor($h*$escala_h);

$tp = imagecreatetruecolor($nuevo_ancho, $nuevo_alto);

imagecopyresampled($tp, $img, 0,0,0,0, 70, 70, $w, $h);

ob_clean();//Adding ob_clean I get it works on online server. 
//With this option I get view the image with the new size 70x70
Header("Content-type: image/jpeg");
imagejpeg($tp, NULL, 100);

imagedestroy($img);
?>

但是如果我从另一个文件如 crop-cargador.php 调用 redimensionador 它不起作用。

裁剪-cargador.php

<p>Option resized from external file</p>
<img src="redimensionador.php" />
<p>Option resized from external file from folders route</p>
<img src="views/modules/redimensionador.php" />

所有这些都在本地主机上工作,但如果我尝试从 crop-cargador.php 查看图像,最后一个示例在在线服务器上不起作用。 =13=]

我应该怎么做才能解决这个问题?

最后我使用了 $_SERVER["DOCUMENT_ROOT"]; 显然我得到了解决方案。

redimensionador.php

<?php
    //Opción 1 para cargar desde otro archivo.
    //Nombre del archivo
    $nombre_archivo = "ajo_tradiciones.jpg";
    //Ruta absoluta desde el directorio Raiz del servidor.
    $rutaRaiz = $_SERVER["DOCUMENT_ROOT"];
    $rutaCarpetas = $rutaRaiz."/views/images/$nombre_archivo";//Carga

    $img = imagecreatefromjpeg($rutaCarpetas);
    $imgs = getimagesize($rutaCarpetas);

    $w = $imgs[0];
    $h = $imgs[1];

    $escala_w = 70/$w;
    $escala_h = 70/$h;

    $nuevo_ancho = floor($w*$escala_w);
    $nuevo_alto = floor($h*$escala_h);

    $tp = imagecreatetruecolor($nuevo_ancho, $nuevo_alto);

    imagecopyresampled($tp, $img, 0,0,0,0, 70, 70, $w, $h);

    ob_clean();
    //Con esta opción logro verla en pantalla con el nuevo tamaño 70x70
    Header("Content-type: image/jpeg");
    imagejpeg($tp, NULL, 100);

    imagedestroy($img);
    ?>

crop-cargador.php

<?php $url = Ruta::ctrRuta(); // https://dominio.com/ ?>
<p>Cargo la imagen desde la ruta de la url absoluta.</p>
<img src="<?php echo $url ?>views/modules/redimensionador.php" />

所以我分享它以防万一以后有人需要它。

您好!