消息关闭
    暂无新消息!
我用了header('Content-Type:image/jpg');来显示验证码图片,但发现有一个网站验证码图片显示不出来,其它网站的验证码都可以显示。不能显示验证码图片的网址是:https://www.5291vpn.cc/vpn/include/vdimgck.php,能显示验证码图片的网址我随便找一个:http://lh.syssuper.com:8000/inc/syscode.php,请问是什么原因呢?(我猜测是https的问题,如果是应该如何处理)


<?php
/**
 * @author 追逐__something
 * @version $id
 */
define('SCRIPT_ROOT',dirname(__FILE__).'/');
@$abc = trim($_REQUEST['op']);
switch($abc)
{
case 'login':
$code = trim($_REQUEST['code']);// 获取验证码
$loginParams['op'] = 'login';// $loginParams为curl模拟登录时post的参数
$loginParams['UserName'] = "123";
$loginParams['Password'] = "123";
$loginParams['ThisNo'] = $code;

$cookieFile = SCRIPT_ROOT.'cookie.tmp';// $cookieFile 为加载验证码时保存的cookie文件名 
$targetUrl = 'http://www.5291vpn.cc/vpn/login.php';// $targetUrl curl 提交的目标地址
$content = curlLogin($targetUrl, $cookieFile, $loginParams);// 参数重置
$content2=iconv('UTF-8', 'GB2312//IGNORE', $content);
echo $content;
break;
case 'test':
header('Content-Type:image/jpg');// Content-Type 验证码的图片类型
showAuthcode('https://www.5291vpn.cc/vpn/include/vdimgck.php');
exit;
break;

}
/**
 * 模拟登录
 * @param string $url 提交到的地址
 * @param string $cookieFile 保存cookie的文件
 * @param string $loginParams 提交时要post的参数
 * @return string $content 返回的内容
 */
function curlLogin($url, $cookieFile, $loginParams)
{
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_COOKIEFILE, $cookieFile); //同时发送Cookie
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $loginParams); //提交查询信息
$cookieFile = SCRIPT_ROOT.'cookie.tmp';
curl_setopt($ch,CURLOPT_COOKIEJAR, $cookieFile); 
$content = curl_exec($ch);
curl_close($ch);
return $content;
}

/**
 * 加载目标网站图片验证码
 * @param string $authcode_url 目标网站验证码地址
 */
function showAuthcode( $authcode_url )
{
$cookieFile = SCRIPT_ROOT.'cookie.tmp';
$ch = curl_init($authcode_url);
curl_setopt($ch,CURLOPT_COOKIEJAR, $cookieFile); // 把返回来的cookie信息保存在文件中
curl_exec($ch);
curl_close($ch);
}
?>

<div style="text-align:center; margin-top:160px;">
<form method="post" autocomplete="off">
<input type="hidden" value="{FORMHASH}" name="formhash" />
<input type="hidden" name="op" value="login">
<div style="font-size:14px;color:#FF0000;" id="abc" >
<input name="code" type="text" value="" style="width:70px;height:26px;text-align:center;" />
<a title="点击刷新验证码" href="javascript:location.reload();"><img src="3.php?op=test" align="absmiddle" width="77px" height="31px" ></a>
<button value="true" name="tijiao" id="test" type="submit" style="padding:6px 12px;font-size:18px;">login</button>
</div>
</form>
</div>

1个回答