获取图片问题
http://api.94qing.com/verify.php
这个地址
试了好多次不行 希望指导怎么获取这个地址的验证码写到本地目录并显示
回复讨论(解决方案)
获取到本地目录并显示...你的意图是?
@PhpNewnew 显示验证码
获取到本地目录并显示...你的意图是?
获取到验证码 显示在网站要求用户输入验证码后继续调用该网站
我没看懂你的意思:
本地是指你自己的网站吗?如果是有两种方法:
1、
2|
$img=file_get_contents("http://api.94qing.com/verify.php");header("content-type:image/jpeg");echo $img;
希望对你有帮助
我没看懂你的意思:
本地是指你自己的网站吗?如果是有两种方法:
1、
2|
$img=file_get_contents("http://api.94qing.com/verify.php");header("content-type:image/jpeg");echo $img;
希望对你有帮助
那么获取改图片保存本地再读出呢
file_put_contents('图片文件名', $img);
但你这个连接是个验证码图片,带有 sessionID
当普通图片处理是不行的
想跨域....这个你要是做成个客户端 保持连接 那还是可以的...要是按照你现在的逻辑 本地网站套别人的网站...那你直接引用他的图片地址不就好了 模拟提交嘛
使用curl模拟获取验证码,同时将curl获取的Cookie进行存储,等你发送数据的时候(Curl发送数据)带上这个Cookie
说白吧 --我研究出这个网站的api调用是这样的 论坛之前说的是访问存个cookie去调用 但是现在他加了一个验证码 验证码对了才能 所以 我想调用必须解决验证码问题-- 所以想到让访问用户自己打 因为 cookie的是一天内有效 所以 只要有一个人打了验证码就可以了 所以说获取这个图片到本地再显示 用户ip去获取的验证码似乎行不通
显然你的思路是正确的
写了一个测试例
session_start();header('Content-type: text/html;charset=utf-8');include 'curl/curl_get.php';$url = 'http://api.94qing.com/';if(isset($_GET['img'])) { curl_get($url); echo curl_get($url . 'verify.php'); exit;}switch(1) { case isset($_POST['code']): $_SESSION['94qing'] = $_POST['code']; curl_get($url . "?code=$_POST[code]"); case isset($_SESSION['94qing']): echo curl_get("$url?type=time"); break; default: echo <<< FORM<form method=post><img src=$_SERVER[PHP_SELF]?img=img alt="获取图片问题" ><input type=text name=code><input type=submit value=ok></form>FORM; exit;}
为简单起见,只示例了获取当前时间的 api
curl_get 函数已经贴过多遍了,只是涵盖了常见的设置
就再贴一遍吧
function curl_get($durl, $data=array()) { $cookiejar = realpath('cookie.txt'); $t = parse_url($durl); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$durl); curl_setopt($ch, CURLOPT_TIMEOUT,5); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($ch, CURLOPT_REFERER, "http://$t[host]/"); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiejar); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiejar); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_ENCODING, 1); //gzip 解码 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); if($data) { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); } $r = curl_exec($ch); curl_close($ch); return $r;}

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Laravel使用其直观的闪存方法简化了处理临时会话数据。这非常适合在您的应用程序中显示简短的消息,警报或通知。 默认情况下,数据仅针对后续请求: $请求 -

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显着减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

您是否想为客户最紧迫的问题提供实时的即时解决方案? 实时聊天使您可以与客户进行实时对话,并立即解决他们的问题。它允许您为您的自定义提供更快的服务

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸
