
批改狀態(tài):合格
老師批語:
fetch 采用while循環(huán)進(jìn)行數(shù)組遍歷
<?php
//引入服務(wù)器連接
require "/xp/phpstudy_pro/WWW/www.zwz.com/zwz/0512/config/PDO.php";
//訪問數(shù)據(jù)表中數(shù)據(jù)
$sql = "SELECT `id` ,`uname`,`pwd` FROM `user` WHERE `id` >= ? ;";
$stmt = $pdo->prepare($sql);
$stmt->execute([1]);
// $user = $stmt->fetch();
while ($user = $stmt->fetch()) {
vprintf("<li>id = %s , uname = %s , pwd = %s</li>",$user);
}
fetchAll 采用foreach 進(jìn)行數(shù)組遍歷
<?php
//引入服務(wù)器連接
require "/xp/phpstudy_pro/WWW/www.zwz.com/zwz/0512/config/PDO.php";
//訪問數(shù)據(jù)表中數(shù)據(jù)
$sql = "SELECT `id` ,`uname`,`pwd` FROM `user` WHERE `id` >= ? ;";
$stmt = $pdo->prepare($sql);
$stmt->execute([1]);
$user = $stmt->fetchAll();
foreach ($user as $key => $value) {
vprintf("<li>id = %s ,uname = %s ,pwd = %s</li>",$value);
}
Cookie是Web服務(wù)器在用戶訪問Internet站點(diǎn)時傳遞到Web瀏覽器的消息。瀏覽器會將每條消息以名稱 - 值對的形式存儲在用戶計(jì)算機(jī)上的一個小文件中。當(dāng)用戶從服務(wù)器請求另一個頁面時,瀏覽器會將cookie發(fā)送回服務(wù)器。這些文件通常包含有關(guān)用戶訪問網(wǎng)頁的信息,以及用戶自愿提供的任何信息,例如:用戶信息,用戶首選項(xiàng),密碼記住選項(xiàng)等。
使用Cookie的優(yōu)點(diǎn)
1、Cookie易于使用和實(shí)現(xiàn)
實(shí)現(xiàn)cookie的使用要比任何其他Internet協(xié)議容易得多。
2、占用更少的內(nèi)存
不需要任何服務(wù)器資源,并存儲在用戶的計(jì)算機(jī)上,因此不會給服務(wù)器帶來額外的負(fù)擔(dān)。
3、持久性
Cookie最強(qiáng)大的一個方面就是持久性。當(dāng)在客戶端的瀏覽器上設(shè)置Cookie時,它可以持續(xù)數(shù)天,數(shù)月甚至數(shù)年。這樣可以輕松保存用戶首選項(xiàng)和訪問信息,并在用戶每次返回站點(diǎn)時保持此信息可用。此外,由于Cookie存儲在客戶端的硬盤上,因此如果服務(wù)器崩潰,它們?nèi)匀豢捎谩?br>4、 透明性
Cookie透明地工作,用戶不知道需要存儲的信息。
5、易于管理
大多數(shù)瀏覽器都可以讓用戶輕松清除瀏覽歷史記錄。只需轉(zhuǎn)到工具,清除歷史記錄并選擇Cookie即可。
Cookie存儲在用戶硬盤驅(qū)動器上的cookie.txt下的文本文件中,因?yàn)樗且粋€文本文件,我們可以使用任何查看器或文本編輯器來顯示,編輯和刪除它們。
使用Cookie的缺點(diǎn)
1、隱私問題
大多數(shù)用戶主要關(guān)心的是隱私。啟用Cookie的Web瀏覽器會跟蹤您訪問過的所有網(wǎng)站。這意味著,經(jīng)許可(或不在Google的情況下),第三方可以訪問這些cookie存儲的信息。在某些情況下,這些第三方可以是廣告商,其他用戶。。。。
2、不安全
Cookie安全性是一個大問題,因?yàn)樗鼈兪且悦魑男问酱鎯?,可能會造成安全風(fēng)險,因?yàn)槿魏稳硕伎梢源蜷_并篡改cookie。
Cookie容易在客戶端被發(fā)現(xiàn)意味著它們很容易被黑客入侵和修改。
3、難以解密
我們可以手動加密和解密cookie,但由于加密和解密所需的時間,它需要額外的編碼并影響應(yīng)用程序性能。
4、大小有限制,只能儲存簡單字符串信息
cookie文本的大?。ㄒ话銥?kb),cookie的數(shù)量(一般每個站點(diǎn)20個)存在一些限制,每個站點(diǎn)只能容納20個cookie。
Cookie僅限于簡單的字符串信息,他們無法存儲復(fù)雜的信息。
5、可以被禁用
用戶可以選擇從瀏覽器設(shè)置中禁用其計(jì)算機(jī)上的cookie。這意味著用戶可以決定不在他的瀏覽器上使用cookie,這可能會在瀏覽器的運(yùn)行中產(chǎn)生一些問題。
6、可以被刪除
用戶可以從其計(jì)算機(jī)中刪除cookie,這使他們可以更好地控制cookie。
setcookie 是創(chuàng)建一個cookie ,$_COOKIE 是全局變量可以打印指定的cookie,創(chuàng)建cookie第一次是請求,第二次才能響應(yīng)出結(jié)果
cookie參數(shù),第三個參數(shù)時間目的是設(shè)置什么時候到期,后面還有許多參數(shù),詳細(xì)了解的話要看官方的解釋…
Session的工作原理
Session的優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
缺點(diǎn)
cookie和session的區(qū)別
switch($action)
{
case 'login':
//檢測用戶是否存在
$sql = "SELECT `uname`,`pwd` FROM `users` WHERE `uname`= ?; ";
$stmt = $pdo->prepare($sql);
$stmt->execute([$username]);
$res = $stmt->fetch();
// var_dump($res);
if($res)
{
//檢測密碼 的正確性
if(password_verify($password,$res['pwd']))
{
//驗(yàn)證通過 存session
$_SESSION['uname'] = $res['uname'];
echo json_encode(array('status'=>1,'msg'=>'登錄成功...正在跳轉(zhuǎn)'),320);
}else{
echo json_encode(array('status'=>0,'msg'=>'用戶名或密碼錯誤'),320);
}
}else{
echo json_encode(array('status'=>0,'msg'=>'用戶名或密碼錯誤'),320);
}
break;
case 'captcha_check':
//將session中的驗(yàn)證碼和用戶提交的驗(yàn)證碼進(jìn)行核對,當(dāng)成功時提示驗(yàn)證碼正確,并銷毀之前的session值,不成功則重新提交 strcasecmp
if(!empty($captcha) && strtolower($_SESSION["captcha"]) === strtolower($captcha)){
$_SESSION["captcha"]="";
echo json_encode(['status'=>1,'msg'=>'驗(yàn)證碼正確']);
}else{
echo json_encode(['status'=>0,'msg'=>'驗(yàn)證碼不正確']);
}
break;
// 退出登錄
case 'logout':
// 清空session變量
session_unset();
// 刪除session文件
session_destroy();
header("Location: index.php");
break;
default:
exit('非法操作');
}
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號