我在HTML中创建了一个iframe,如:
<p class="input-block">
<iframe src="php/image.php" height="50" width="100" scrolling="no" frameborder="0" marginheight="0" marginwidth="0" class="captcha-frame" name="captcha_image_frame"></iframe>
</p>
此html文件位于inetpub/wwwroot/Site
下,inetpub/wwwroot/Site/php
下有一个image.php文件。但是,当我进入html页面时,我在控制台上看到错误:
获取http://demo.com/php/image.php 404(未找到)
如果我有机会src到“http://localhost/php/image.php
”,那么我收到错误:
获取http://localhost/php/image.php net :: ERR_CONNECTION_REFUSED
注意:当我输入http://demo.com/php/image.php
时,我也没有找到错误,但我希望不会得到它,因为php文件夹下有一个image.php :(
问题是,我如何设法将image.php分配给iframe源。如果有人帮忙,我感激不尽。
谢谢!
* demo不是原始域名。
编辑: image.php内容:
<?php
session_start();
header("(anti-spam-content-type:) image/png");
$enc_num = rand(0, 9999);
$key_num = rand(0, 16);
$hash_string = substr(md5($enc_num), $key_num, 5);
$hash_md5 = md5($hash_string);
$_SESSION['verify'] = $hash_md5;
// Verification Image Background Selection
$bgs = array('1.png');
$background = array_rand($bgs, 1);
// Verification Image Variables
$img_handle = imagecreatefrompng($bgs[$background]);
$text_colour = imagecolorallocate($img_handle, 255, 255, 255);
$font_size = 5;
$size_array = getimagesize($bgs[$background]);
$img_w = $size_array[0];
$img_h = $size_array[1];
$horiz = round(($img_w / 2) - ((strlen($hash_string) * imagefontwidth(5)) / 2), 1);
$vert = round(($img_h / 2) - (imagefontheight($font_size) / 2));
// Make the Verification Image
imagestring($img_handle, $font_size, $horiz, $vert, $hash_string, $text_colour);
imagepng($img_handle);
// Destroy the Image to keep Server Space
imagedestroy($img_handle);
答案 0 :(得分:0)
您获得的错误是因为端口80正在被其他应用程序使用。 This link会帮助你。如果Skype正在运行,请更改Skype设置并重新安装服务器。
所以为了显示验证码,我这样做,通过将图像转换为数据URL.in html而不是iframe,直接使用img标签
<img src="./php/image.php" />
在php中如下
<?php
header ('Content-type: image/png');
$im = @imagecreatefrompng("./1.png");
imagepng($im, NULL, 0);
imagedestroy($im);
?>