вызов другого php-файла с использованием тега <img> - PullRequest
1 голос
/ 21 октября 2011

image.html - <img src="showImage.php?id=44"/> <- это код, который я пытаюсь заставить работать. </p>

showImage.php - <?php echo ("showImage.php called"); ?> <- это php-файл, который я пытаюсь вызвать. </p>

Проблема в том, что ... тег img не вызывает 'showImage.php' для распечатки 'showImage.php звонил.'. Вместо этого он пытается отобразить файл showImage.php как изображение :( ... и не отображает то, что должен. Я что-то здесь не так делаю?

* Примечание: id = 44 будет использоваться для чего-то другого ... здесь не большая проблема.

Спасибо.

Ответы [ 3 ]

2 голосов
/ 21 октября 2011

Если вы действительно посетите эту страницу в браузере, я уверен, что она напечатает showImage.php called в браузере.Однако вы указываете, что файл должен быть изображением в вашем HTML, и браузер пытается обработать его как изображение.Когда вместо этого он получает текстовый / HTML-файл, браузер просто показывает, что изображение было недействительным, вместо этого он не печатает текст.Ваш showImage.php должен будет на самом деле выводить изображение, чтобы браузер отображал его внутри документа.В противном случае вам придется посетить страницу вручную, чтобы увидеть любой текст, который она выводит для отладки и т. П.результат. никогда не будет отображать текст вместо изображения, если вы не укажете атрибут alt.

1 голос
/ 21 октября 2011

<img/> будет пытаться отобразить вещи как изображение, это своего рода назначение; -)

Вам нужно будет showImage.php вывести изображение / данные изображения. Вы можете сделать это динамически в PHP с помощью GD2 или imagemagick.

Это пример того, как писать текст, используя GD2, из документации PHP .

<?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);
?>
0 голосов
/ 21 октября 2011

Вам необходимо создать изображение с помощью библиотеки GD в showimage.php и установить для заголовков этого файла значение image/png или любой другой тип изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...