设置cookie用法的方法

来源:百度知道 编辑:UC知道 时间:2024/06/01 15:13:52
最近看到CURL PHP库的用法,这个例子感觉不错,只是不知道,运行中支持的网站是不是很多.大家过来测试一下,
、cookie用法
<?php
$cookie_jar = tempnam('./tmp','cookie');
// login
$c=curl_init('http://login_url?username=xiaxiaobao&password=xiaxiaobao');
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_COOKIEJAR, $cookie_jar);
curl_exec($c);
curl_close($c);

$c="url";
$c=curl_init($c);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_COOKIEFILE, $cookie_jar);
curl_exec($c);
curl_close($c);
?>
二、post用法
特别要注意:post的数据要经过urlencode编码

<?php
$postdata="user=".urlencode($data);
$c=curl_init($c);
curl_setopt($c, CURLOPT_POST, 1);
curl_setopt($c, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($c, CURLOPT_RETU

Cookie的作用:
1.记录访客的某些信息。例如可以利用Cookie纪录用户光临你的网页次数,
或者访客曾经输入过的信息,某些网站(如网易社区)可以自动纪录你上次登录
的用户名,用的就是Cookie。
2.在页面之间传递变量。浏览器并不会保存当前页面上任何变量信息的,当
页面被关闭,页面上的任何变量信息将随之消失。如果你在一个页面有一个变量
a = 5,要把这个变量传递到另外一页,可以使用 http://url?a=5方式传递变
量,或者在网页中插入一个表单,并在表单中插入一个隐含域(input hidden
field),以POST/GET方式传递到下一页。另外一种方式就是使用Cookie,把变
量以Cookie形式保存下来,然后在下一页通过读取该Cookie来获得变量的值。
注意:Cookie一定要在其他Header之前发送出去,否则出错!
下面一个纪录某访客来访次数的例子:
<?
$HTTP_COOKIE_VARS["VisitTimes"]?($VisitTimes ++):($VisitTimes = 1);
setcookie("VisitTimes",$VisitTimes,time()+31536000);
echo "<b>欢迎你第<font color="#FF0000"> ".$VisitTimes.
" </font>光临我的主页</b><br>n";
?>
程序运行的结果如本页最顶所示(刷新一下看看访问的次数是否变化)。
PHP的Cookie函数为:
int setcookie(string name, string value, int expire, string path,
string domain, int se