curl.php中
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "http://localhost/www/test/p.php?username=feng");
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_exec ($ch);
curl_close ($ch);p.php中
session_start();
if ($_SERVER['REQUEST_METHOD']=='GET') {
$_SESSION['username'] = $_GET['username'];
}else{
echo $_SESSION['username'];
}但是p.php中根本获取不到curl.php发送过来的值
并报错
Notice: Undefined index: username in D:\php\web\www\test\p.php on line 4
请问这是什么原因????我php.ini开启了extension=php_curl.dll
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "http://localhost/www/test/p.php?username=feng");
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_exec ($ch);
curl_close ($ch);p.php中
session_start();
if ($_SERVER['REQUEST_METHOD']=='GET') {
$_SESSION['username'] = $_GET['username'];
}else{
echo $_SESSION['username'];
}但是p.php中根本获取不到curl.php发送过来的值
并报错
Notice: Undefined index: username in D:\php\web\www\test\p.php on line 4
请问这是什么原因????我php.ini开启了extension=php_curl.dll
解决方案 »
- php使用gmail群发邮件问题
- 求高手帮助解决,只差最后一步。Apache、(此错误信息很困扰我,前面都很顺利)
- zend studio for eclipse 6.0 中怎么配置服务器APACHE和数据库MYSQL ?
- 求助,用<?php echo $fuwu; ?>打印出来是%u2605?怎么能显示正常?
- php 写properties文件,有框架可以用吗?
- php数据库插入数据问题,死活插不进去,求大神指导
- in怎么用?
- 这样写正则表达式,怎么不行啊?$符号怎么匹配?
- 我到现在还没弄懂php的error_report应该怎么设
- 如何将字符串型的时间转换为date型?在线等待,100分
- session传值问题
- 怎么通过代理来使用file_get_contents?
敢问lz执行过程?
先执行curl.php然后运行p.php?
这就好比是设置了表单却没有提交一样。curl的结果在本页面处理。
php是最新版本的 应该不会有问题啊
我是这样执行的 怎么会有逻辑错误呢?
在curl.php中把参数传给p.php 然后在p.php中获取 这样有错误 ?
逻辑问题。curl是用来获取目标网址的结果信息,如模拟提交表单等,然后进行处理。。
虽然cul提交get参数到p.php了,但是你直接运行p.php不会执行你的if()代码块,因为是直接访问。
<a href="b.php?text='haihao'"/>点击我</a>
这样点击后的b.php可以取到text的参数值,get方式访问的,可以取到参数。但是你如果直接在浏览器中输入b.php进行访问能取到参数值么?显然不能的。
我觉得你对curl的使用用途搞错了。
<?php
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "http://localhost/p.php?username=feng");
curl_setopt ($ch, CURLOPT_HEADER, 0);
if(($result = curl_exec ($ch))===false)
{
echo "Error:curl_error()";
}
curl_close ($ch);echo $result;p.php中:<?php
session_start();
if ($_SERVER['REQUEST_METHOD']=='GET') {
$_SESSION['username'] = $_GET['username'];
}else{
$_SESSION['username'] = 'sorry';
}
echo $_SESSION['username'];
?>
直接在浏览器中输入b.php进行访问也可以取到值为什么不行呢?
因为你先是用<a href="b.php?text='haihao'"/>点击我</a>
传的就把text的值给传进来啦 然后保存到session当中
当再次访问b.php就直接读取session这样难道不行?
curl.php中读p.php的执行结果:
<?php
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "http://localhost/p.php?username=feng");
curl_setopt ($ch, CURLOPT_HEADER, 0);
if(($result = curl_exec ($ch))===false)//result 变量保存的是p.php的执行结果。也就是session的值
{
echo "Error:curl_error()";
}
curl_close ($ch);echo $result;//这里echo的就是p.php的执行结果
正确