本文目錄一覽:
- 1、php設置cookie之前,錯誤提示所有輸出了,各位幫忙看看~~
- 2、用php設置cookie報錯
- 3、如何設置PHP cookie
- 4、如何使用PHP操作cookie
- 5、在php中怎麼設置cookie
php設置cookie之前,錯誤提示所有輸出了,各位幫忙看看~~
這個不是錯誤,只是一個警告信息!你可以屏蔽掉它。
在第一行加上
error_reporting(1);
就行了。
用php設置cookie報錯
cookie會設置在響應header中,因此,設置cookie之前,不能有任何輸出的內容
如echo、print等
如何設置PHP cookie
你看下給你的兩個頁面,只要考過去,你運行下就會用cookie了
//這是第一個頁面
?php
//提供一個功能,登陸後才可使用
header(“content-type:text/html;charset=UTF-8”);
//發起請求的客戶端是否已經登陸
@$islonin=$_COOKIE[‘islogin’];
if(!empty($islonin) $islonin==’true’){
echo “h2當前客戶端是已登陸狀態,有權使用此功能!/h2”;
}else{
echo “h2對不起,你無權使用此功能,請先a href=’cookielogin.php’登陸!/a /h2”;
}
?
//這是第二個頁面
?php
header(“content-type:text/html;charset=UTF-8”);
if(count($_POST)0){
@$username=$_POST[‘username’];
@$password=$_POST[‘password’];
if($username==’briup’$password==’briup’){
//創建cookie,默認是存在於遊覽器進程中
setcookie(“islogin”,”true”);
echo “h2登陸成功,a href=’cookiecheck.php'”
.”點擊 /a 訪問cookiecheck!/h2″;
}else{
echo “h2登陸失敗,a href=’cookielogin.php'”
.”點擊/a重新登陸cookielogin!/h2″;
exit;
}
}
?
html
body
center
h2會員登陸/h2
form action=”cookielogin.php” method=”post”
table border=”1″
tr
td用戶名/td
td
input type=”text” name=”username” size=’15’/
/td
/tr
tr
td密碼/td
td
input type=”password” name=”password” size=”15″ /
/td
/tr
tr
td
/td
td
input type=”submit” value=”登陸”/
/td
/tr
/table
/form
/center
/body
/html
如何使用PHP操作cookie
PHP setcookie() 函數向客戶端發送一個 HTTP cookie。cookie 是由伺服器發送到瀏覽器的變數。cookie 通常是伺服器嵌入到用戶計算機中的小文本文件。每當計算機通過瀏覽器請求一個頁面,就會發送這個 cookie。cookie 的名稱指定為相同名稱的變數。例如,如果被發送的 cookie 名為 “name”,會自動創建名為 $user 的變數,包含 cookie 的值。必須在任何其他輸出發送前對 cookie 進行賦值。如果成功,則該函數返回 true,否則返回 false。 setcookie(name, value, expire, path, domain, secure) name 必需。規定 cookie 的名稱。value 必需。規定 cookie 的值。expire 可選。規定 cookie 的有效期。path 可選。規定 cookie 的伺服器路徑。domain 可選。規定 cookie 的域名。secure 可選。規定是否通過安全的 HTTPS 連接來傳輸 cookie。可以通過 $HTTP_COOKIE_VARS[“user”] 或 $_COOKIE[“user”] 來訪問名為 “user” 的 cookie 的值。在發送 cookie 時,cookie 的值會自動進行 URL 編碼。接收時會進行 URL 解碼。如果你不需要這樣,可以使用 setrawcookie() 代替。程序1:設置並發送 cookie: ?php $value = “my cookie value”; // 發送一個簡單的 cookie setcookie(“TestCookie”,$value); ? html body … … ?php $value = “my cookie value”; // 發送一個 24 小時候過期的 cookie setcookie(“TestCookie”,$value, time()+3600*24); ? html body 程序2:檢索cookie 值的不同方法: html body ?php // 輸出個別的 cookie echo $_COOKIE[“TestCookie”]; echo “br /”; echo $HTTP_COOKIE_VARS[“TestCookie”]; echo “br /”; // 輸出所有 cookie print_r($_COOKIE); ? /body /html 程序輸出: my cookie value my cookie value Array ([TestCookie] = my cookie value) 程序3:通過把失效日期設置為過去的日期/時間,刪除一個 cookie: ?php // 把失效日期設置為一小時前 setcookie (“TestCookie”, “”, time() – 3600); ? 程序4:創建一個數組 cookie: ?php setcookie(“cookie[three]”,”cookiethree”); setcookie(“cookie[two]”,”cookietwo”); setcookie(“cookie[one]”,”cookieone”); // 輸出 cookie (在重載頁面後) if (isset($_COOKIE[“cookie”])) { foreach ($_COOKIE[“cookie”] as $name = $value) { echo “$name : $value br /”; } } ? 程序輸出: three : cookiethree two : cookietwo one : cookieone 程序5: /** * 01.cookie設置 * */ function ssetcookie($var, $value, $life=0) { global $_SGLOBAL, $_SC, $_SERVER; setcookie($_SC[‘cookiepre’].$var, $value, $life?($_SGLOBAL[‘timestamp’]+$life):0, $_SC[‘cookiepath’], $_SC[‘cookiedomain’], $_SERVER[‘SERVER_PORT’]==443?1:0); }
在php中怎麼設置cookie
php設置和獲取cookie
setcookie(‘mycookie’,’value’);
//函數原型:int setcookie(string name,string value,int expire,string path,string domain,int secure)
echo($mycookie);
echo($HTTP_COOKIE_VARS[‘mycookie’]);
echo($_COOKIE[‘mycookie’]);
刪除Cookie
(1)調用只帶有name參數的setcookie();
(2)使失效時間為time()或time-1;
?php setcookie(‘name’); ?
setcookie(‘mycookie’);或setcookie(‘mycookie’,”);或setcookie(“mycookie”,false);
//setcookie(‘mycookie’,”,time()-3600);
echo($HTTP_COOKIE_VARS[‘mycookie’]);
print_r($_COOKIE);
建議刪除方法:
setcookie(‘mycookie’,”,time()-3600);
PHP提供一個很好用的函數mktime()。
你只要按順序傳送給mktime()你希望表示的小時,分鐘,秒數,月份,日期,及年份,
mktime()就會返回該日期自1970年1月1日的總秒數。
因此,如果需要模擬 Y2K 問題:
$y2k = mktime(0,0,0,1,1,2000);
setcookie(‘name’,’value’,$y2k);
setcookie(‘name’, ‘value’, time+3600);
setcookie(‘name’, ‘value’, $y2k, ‘~/myhome’, ‘.domain.com’);
獲取COOKIE過期時間的辦法
$expire = time() + 86400; // 設置24小時的有效期
setcookie (“var_name”, “var_value”, $expire); // 設置一個名字為var_name的cookie,並制定了有效期
setcookie (“var_name_expire”, $expire, $expire); // 再將過期時間設置進cookie以便你能夠知道var_name的過期時間
註:
在發送 cookie 時,cookie 的值會自動進行 URL 編碼。接收時會進行 URL 解碼。
如果你不需要這樣,可以使用 setrawcookie() 代替。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/271802.html