【问题标题】:How to create a image header page using php & html如何使用 php & html 创建图像标题页
【发布时间】:2014-09-22 15:52:39
【问题描述】:

我想在 php 上创建一个图像标题页,我可以在其中包含一些非 ssl 的 url,以拥有一个完全 ssl 加密的网页,例如来自 dadduckgo 的这项服务:

http://images.duckduckgo.com/iu/?u=http://4.bp.blogspot.com/-JOqxgp-ZWe0/U3BtyEQlEiI/AAAAAAAAOfg/Doq6Q2MwIKA/s1600/google-logo-874x288.png

此时我的页面向我显示了像duckduckgo 这样的图像,但是如果我包含一个像duckduck go 的架构这样的url (www.example.org/img.php?img=http://www.image.php/img.jpg)。图像不加载。我认为这是图像标题的问题。

我的代码:

<?php
    session_start();
    $img = $_GET["img"];
    echo imagejpeg($img);
?>
<html>
<head>
<meta content="width=device-width; height=device-height;" name="viewport">
</head>
<body>
<img class="decoded" alt='<?php echo $img; ?>' src='<?php echo $img; ?>'>
</body>
</html>

【问题讨论】:

    标签: php html image ssl header


    【解决方案1】:

    您想要的是通过您的服务器将图像从服务器加载到客户端。 您可以通过创建一个公开的分隔 php 文件来做到这一点,例如 image.php。

    因此,使用您在 html 页面顶部的代码创建一个 php 文件 image.php。您只需要将这段代码放在上面:

    header('Content-Type: image/jpeg');
    

    现在你可以这样称呼它:http://your-domain.com/image.php?img=https://your-domain.com/images/your-image.jpg

    【讨论】:

    • 它返回给我这样的错误:“图像(url)无法显示,因为它包含错误。”
    • 您必须为此使用 imagecreatefromjpeg 函数。 imagejpg 函数不会加载 url 或文件,而是将 jpg 作为参数。见:php.net/manual/en/function.imagejpeg.php
    【解决方案2】:

    我认为你首先需要创建图像,图像创建后,你调用 imagejpeg() 函数。

    $img = $_GET['img'];
    $generated_img = imagecreatefromjpeg($img);
    imagejpeg($generated_img);
    

    你可以在你的代码之外处理图片,在图片元素的src属性中引用这段代码

    <img src="img.php" />
    

    【讨论】:

      【解决方案3】:

      arjan 说得对。 但如果您希望将 php 放在同一个文件中,请确保退出。并确保在标头函数调用之前没有回显...这包括打开 php 标记之前的空格和新行。

      <?php
          session_start();
          if ($_GET["img"] != '')
          {
              $img = $_GET["img"];
              header('Content-Type: image/jpeg');
              echo imagejpeg($img);
              exit();
          }
      ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-21
        • 1970-01-01
        • 1970-01-01
        • 2010-10-17
        • 2011-08-17
        • 2010-11-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多