㈠ php curl如何读取一个页面,然后把传过来的cookie保存在服务器上
curl的easy接口中提供了5个与cookie有关的option,其中,CURLOPT_COOKIEFILE,CURLOPT_COOKIEJAR,CURLOPT_COOKIELIST都会打开curl的cookie引擎,使得curl在收到http response时解析header field中的cookie。
设置CURLOPT_COOKIEFILE会使curl下一次发请求时从指定的文件中读取cookie。
设置CURLOPT_COOKIEJAR会使curl在调用 curl_easy_cleanup的时候把cookie保存到指定的文件中。
设置CURLOPT_COOKIELIST会把指定的cookie字符串列表加入easy handle维护的cookie列表中。每个cookie字符串要么符合HTTP response header的"Set-Cookie: NAME=VALUE;..."格式,CURLOPT_COOKIE用于设置一个分号分隔的“NAME=VALUE”列表,用于在HTTP request header中设置Cookie header。
㈡ php 提交登陆保存cookie怎么用
跟session使用一样,使用$_COOKIE,不过cookie判断是否登录不太安全,建议再判断一次
㈢ php cookie如何指定保存的路径
session_save_path('/dev/shm');//放到共享内存中 速度很快:
<?<ahref="
setcookie("UNAME","demo123",time()+3600);//cookie数据的生存时间为1个小时
echo$_COOKIE['UNAME'];
?>
㈣ php如何将一个数组保存在cookie里面
<?php
/**
*cookie本身就是超全变量,是个数组。$_COOKIE[],针对你这种情况,只有把COOKIE变为
*二维数组
*/
//比如你在之前已经设置$_COOKIE['nameid'],$_COOKIE['key_id'],你的ajax返回时候就如下操作
$_COOKIE['nameid'][]=$_POST['daan'];
$_COOKIE['key_id'][]=$_POST['key']+1;
㈤ php 怎样暂时保存数据 cookie session 只能用在顶部 还有其他方法吗
保存数据的方法很多,除了cookie session外,可以生成临时文件来保存数据,也可以用php的memcached组件把数据保存在内存里。
㈥ php的curl保存cookies到文件里面怎样区分不同人的文件呢
好像同一个curl实例算一个人,就是你写的$ch.
针对不同的$ch,定义不同的cookie文件
㈦ php,用curl获取到的cookie文件怎么把内容储存在mysql中
/*-----保存COOKIE-----*/
$url = 'www.xxx.com'; //url地址
$post = "id=user&pwd=123456"; //POST数据
$ch = curl_init($url); //初始化
curl_setopt($ch,CURLOPT_HEADER,1); //将头文件的信息作为数据流输出
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //返回获取的输出文本流
curl_setopt($ch,CURLOPT_POSTFIELDS,$post); //发送POST数据
$content = curl_exec($ch); //执行curl并赋值给$content
preg_match('/Set-Cookie:(.*);/iU',$content,$str); //正则匹配
$cookie = $str[1]; //获得COOKIE(SESSIONID)
curl_close($ch); //关闭curl
/*-----使用COOKIE-----*/
curl_setopt($ch,CURLOPT_COOKIE,$cookie);
㈧ 如何使用PHP操作cookie
1.创建/更新cookie
.代码如下:
setCookie($cookieName,$value,time()+秒数);
例子:创建一个cookie,名字为UserName,值为zs,过期时间为2个星期
.代码如下:
setcookie("UserName","zs",time()+2*7*24*3600);
如果不设置时间,就不会保存到cookie文件中。浏览器不关时,能够访问。当浏览器关闭时,就无法访问了。
例子:
.代码如下:
setcookie("Age","18");
2.取cookie的值
.代码如下:
$_cookie[$cookieName];
例子:取出UserName的值,放在变量$uName中
.代码如下:
$uName=$_COOKIE['UserName'];
取值的时候,一般会先判断是否为空,再进行取值操作。上面的取值操作一般这样写:
.代码如下:
if(!empty($_COOKIE['UserName']))
{
$uName=$_COOKIE['UserName'];
}
3.删除指定cookie
.代码如下:
setcookie($cookieName,value,time()-秒数);
//或者
setcookie($cookiename,'');
//或者
setcookie($cookiename,NULL);
例子:删除UserName
.代码如下:
setcookie("UserName","zs",time()-3600);
4.删除当前会话的所有cookie
.代码如下:
foreach($_COOKIEas$key=>$val){
setcookie($key,"",time()-100);
}
当无cookie时,本机保存cookie的文件也将删除。
㈨ 请教如何使用php 写入cookie到指定的文件名中
用curl函数
获取cookie在设置
curl_setopt($ch, CURLOPT_COOKIEJAR, 1.txt);
访问时用curl获取内容带上cookie
curl_setopt($ch, CURLOPT_COOKIEFILE, 1.txt);
㈩ php 如何使用cookie安全的保存登录状态sessionid
同样还是将用户的认证信息保证在一个cookie中,具体如下:
1.cookie名:uid。推荐进行加密,比如MD5('站点名称'+userid)。
2.cookie值:登录名|有效时间Expires|hash值。hash值可以由"登录名+有效时间Expires+用户密码(加密后的)的前几位+salt",salt是保证在服务器端站点配置文件中的随机数。
这样子设计有以下几个优点:
1.即使数据库被盗了,盗用者还是无法登录到系统,因为组成cookie值的salt是保证在服务器站点配置文件中而非数据库。
2.如果账户被盗了,用户修改密码,可以使盗用者的cookie值无效。
3.如果服务器端的数据库被盗了,通过修改salt值可以使所有用户的cookie值无效,迫使用户重新登录系统。
4.有效时间Expires可以设置为当前时间+过去时间(比如2天),这样可以保证每次登录的cookie值都不一样,防止盗用者窥探到自己的cookie值后作为后门,长期登录。