使用<img/>标记调用另一个php文件

时间:2011-10-20 22:25:35

标签: php image

image.html - <img src="showImage.php?id=44"/>&lt; - 这是我正在努力工作的代码。

showImage.php - <?php echo ("showImage.php called"); ?>&lt; - 这是我试图调用的php文件。

问题是.. img标签没有调用'showImage.php'打印出“showImage.php called。”。相反,它试图将showImage.php文件显示为图像:( ...并且不显示它应该是什么。我在这里做错了吗?

*注意:id = 44将用于其他东西......这里不是一个大问题。

谢谢。

3 个答案:

答案 0 :(得分:2)

如果您确实在浏览器中访问该页面,我确信它会在浏览器中打印出showImage.php called。但是,您指定该文件应该是HTML中的图像,并且浏览器正在尝试将其视为图像。当它获得text / html文件时,浏览器只显示图像无效,而不是打印文本。你的showImage.php需要实际输出一个图像,以便浏览器在你的文档中呈现它。否则,您必须手动访问该页面以查看它为调试输出的任何文本等。

总而言之, 调用你的文件,浏览器只是忽略了结果。除非您指定alt属性,否则永远不会显示文字而非图片。

答案 1 :(得分:1)

<img/>会尝试将事物显示为图像,这是它的目的; - )

您需要showImage.php输出图像/图像数据。您可以使用GD2或imagemagick在PHP中动态执行此操作。

这是write text using GD2, from the PHP docs

的示例
<?php
// Set the content-type
header('Content-Type: image/png');

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = 'Testing...';
// Replace path by your own font path
$font = 'arial.ttf';

// Add some shadow to the text
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>

答案 2 :(得分:0)

您需要使用showimage.php中的GD库创建图像,并将该文件的标题设置为image/png,或者设置为任何图像类型。