php没有执行另一个脚本

时间:2011-08-12 18:16:21

标签: php

我有一个.php文件,如下所示:

foreach($stmt->fetchAll() as $array)
              {
            echo '<div class="thumb" style="width: '.$array['thumb_width'].'px; height: '.$array['thumb_height'].'px;">
            <p><a href="showfile.php?image_id='.$array['image_id'].'">
            <img src="showthumbs.php?image_id='.$array['image_id'].'" alt="'.$array['image_name'].' /">
            </a></p>
            <p>'.$array['image_name'].'</p></div>';
            }

我正在按照教程here来基本上传和显示图片。当我查看源加载的页面(which you can test out here)时,由于某种原因它没有显示图像。我将showthumbs.php放在与gallery.php相同的位置。我错过了什么?

3 个答案:

答案 0 :(得分:1)

问题在于你的showthumbs.php。您需要告诉浏览器页面返回图像。现在,它正在尝试获取图像数据并将其解析为文本。

为此,请将以下行添加到showthumbs.php(在输出图像之前):

header("Content-type: image/jpg");

答案 1 :(得分:1)

我很确定这是相关的......

页面上的

:(您尝试用作图片的那个) http://renps.nm3.co/showthumbs.php?image_id=1

你得到了一个回音或者说“我的上帝”并且产生错误......

Warning: Cannot modify header information - headers already sent by (output started at /home/renps/public_html/showthumbs.php:2) in /home/renps/public_html/showthumbs.php on line 41

答案 2 :(得分:0)

你probalby在<?php标记之前有换行符。这意味着当您尝试设置标头时,已经将某些内容输出到响应正文。并且必须在发送正文之前设置标题。否则你会收到错误:

警告:无法修改标头信息 - 已发送的标头

只需在showthumbs.php中查找<?php之前的任何字符。我的猜测是它是一个空格或新线。