第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
  • 從數(shù)據(jù)庫中查詢數(shù)據(jù) $sql="SELECT username,email,url,face,content,pubTime FROM comments"; $mysqli_result=$mysqli->query($sql); if($mysqli_result&& $mysqli_result->num_rows>0){ while($row=$mysqli_result->fetch_assoc()){ $comments[]=new Comment($row); } } 將用戶提交的信息轉(zhuǎn)換為json數(shù)據(jù)并提交給文件doAction.php,用戶輸入信息有誤等信息的顯示,都是由javascript完成
    查看全部
  • $res=Comment::validate($arr); //數(shù)據(jù)在自定義類方法中獲取,過濾,保存 //json_encode()對變量進(jìn)行JSON編碼,json_decode()對JSON格式的字符串進(jìn)行轉(zhuǎn)換為PHP變量. $comment的output()方法 public function output(){ if($this->data['url']){ $link_start="<a href='".$this->data['url']."' target='_blank'>"; //a標(biāo)簽分開寫是為了能在a標(biāo)簽中插入其他元素 $link_end="</a>"; } $dateStr=date("Y年m月d日 H:i:s",$this->data['pubTime']); $res=<<<EOF <div class='comment'> <div class='face'> {$link_start} <img width='50' height='50' src="img/{$this->data['face']}.jpg" alt="" /> {$link_end} </div> <div class='username'> {$link_start} {$this->data['username']} {$link_end} </div> <div class='date' title='發(fā)布于{$dateStr}'> {$dateStr} </div> <p>{$this->data['content']}</p> </div> EOF; return $res; }
    查看全部
  • 表單輸入過濾下篇 //2.2過濾用戶輸入的特殊字符 public static function validate_str($str){ if(mb_strlen($str,'UTF8')<1){ //以UTF8格式獲取字符串的長度獲取字符串長度 return false; } //htmlspecialchars把預(yù)定義的字符轉(zhuǎn)換為HTML實(shí)體,ENT_QUOTES為編碼$str內(nèi)的雙引號(hào)和單引號(hào) //nl2br()在字符串中的每個(gè)新行(\n)之前插入 HTML 換行符(<br> 或 <br />) $str=nl2br(htmlspecialchars($str,ENT_QUOTES)); return $str; }
    查看全部
    0 采集 收起 來源:表單輸入過濾

    2018-03-22

  • 表單輸入過濾中篇 2.程序分析 //2.1檢測用戶輸入的數(shù)據(jù) public static function validate(&$arr){ //&為引用聲明:&$arr if(!($data['email']=filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL))){ $errors['email']='請輸入合法郵箱'; } if(!($data['url']=filter_input(INPUT_POST,'url',FILTER_VALIDATE_URL))){ $url=''; } //過濾函數(shù)的回調(diào)函數(shù),函數(shù)名必須存入名為 "options" 的關(guān)聯(lián)數(shù)組中 if(!($data['content']=filter_input(INPUT_POST,'content',FILTER_CALLBACK,array('options'=>'Comment::validate_str')))){ $errors['content']='請輸入合法內(nèi)容'; } //過濾標(biāo)準(zhǔn)的相應(yīng)參數(shù)必須存入一個(gè)名為 "options" 的關(guān)聯(lián)多維數(shù)組中。 $int_options=array( 'options'=>array( //FILTER_VALIDATE_INT對應(yīng)參數(shù) 'min_range'=>1, //min_range - 規(guī)定最小整數(shù)值 'max_range'=>5 //max_range - 規(guī)定最大整數(shù)值 ) ); if(!($data['face']=filter_input(INPUT_POST,'face',FILTER_VALIDATE_INT,$int_options))){ $errors['face']='請選擇合法頭像'; } if(!empty($errors)){ $arr=$errors; return false; } $arr=$data; $arr['email']=strtolower(trim($arr['email'])); //strtolower()將字符串轉(zhuǎn)換成小寫 trim()去掉前后空格 return true; }
    查看全部
    0 采集 收起 來源:表單輸入過濾

    2018-03-22

  • 表單輸入過濾上篇 1.php5.4起支持回調(diào)函數(shù) 1).函數(shù)做回調(diào)函數(shù),以 string 類型傳遞其名稱。()可以使用任何內(nèi)置或用戶自定義函數(shù),但不能使用語言結(jié)構(gòu)(如:array(),echo,empty(),eval(),exit(),isset(),list(),print 或 unset() )函數(shù) 2).一個(gè)已實(shí)例化的對象的方法被作為數(shù)組傳遞,下標(biāo) 0 包含該對象,下標(biāo) 1 包含方法名。 3).靜態(tài)類方法也可不經(jīng)實(shí)例化該類的對象而傳遞,只要在下標(biāo) 0 中包含類名而不是對象。自 PHP 5.2.3 起,也可以傳遞 'ClassName::methodName'。 function my_callback_function() { echo 'hello world!'; } class MyClass { static function myCallbackMethod() { echo 'Hello World!'; } } //函數(shù)做回調(diào)函數(shù) call_user_func('my_callback_function'); //靜態(tài)方法做為回調(diào)函數(shù) call_user_func(array('MyClass', 'myCallbackMethod')); call_user_func('MyClass::myCallbackMethod'); // 對象方法做回調(diào)函數(shù) $obj = new MyClass(); call_user_func(array($obj, 'myCallbackMethod')); filter_input()為幾大過濾函數(shù)之一的:獲取腳本外數(shù)據(jù)并進(jìn)行字符合法化過濾函數(shù). filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL) filter_input()參數(shù)說明:第一個(gè)參數(shù)表示調(diào)用的數(shù)據(jù)是外部通過POST方法傳輸過來,第二個(gè)參數(shù)表明從$_POST[email]中取得具體數(shù)據(jù),第三個(gè)參數(shù)說明具體過濾標(biāo)準(zhǔn),第四個(gè)參數(shù)為具體過濾標(biāo)準(zhǔn)的相應(yīng)參數(shù)(可省略)
    查看全部
    0 采集 收起 來源:表單輸入過濾

    2017-02-10

  • MYSQLi中事務(wù)處理下篇(PHP代碼及其說明) 3.用php中的mysqli庫實(shí)現(xiàn): //先關(guān)閉自動(dòng)提交功能 $mysqli->autocommit(FALSE); $sql="UPDATE account SET money=money-200 WHERE username='king'"; $res=$mysqli->query($sql); $res_affect=$mysqli->affected_rows; $sql1='UPDATE account SET money=money+200 WHERE username="queen"'; $res1=$mysqli->query($sql1); $res1_affect=$mysqli->affected_rows; if($res &&$res_affect>0 && $res1 && $res1_affect>0){ //判斷是否所有語句都運(yùn)行正確 $mysqli->commit(); //提交系統(tǒng)執(zhí)行 echo '轉(zhuǎn)賬成功<br/>'; $mysqli->autocommit(TRUE); //回復(fù)自動(dòng)提交功能 }else{ $mysqli->rollback(); //回滾到自動(dòng)事務(wù)初始狀態(tài)(這個(gè)函數(shù)還有$mysqli->autocommit(TRUE)的功能) echo '轉(zhuǎn)賬失敗<br/>'; }
    查看全部
  • MYSQLi中事務(wù)處理上篇(事務(wù)原理與操作方法說明) 1.一個(gè)事務(wù)是一個(gè)連續(xù)的一組數(shù)據(jù)庫操作只有當(dāng)該組內(nèi)的每個(gè)單獨(dú)的操作都成功了,整個(gè)事務(wù)才執(zhí)行。如果在事務(wù)的任何操作失敗,則整個(gè)事務(wù)將失敗。 事務(wù)有以下四個(gè)標(biāo)準(zhǔn)屬性 原子性: 確保工作單元內(nèi)的所有操作都成功完成,否則事務(wù)將被中止在故障點(diǎn),和以前的操作將回滾到以前的狀態(tài)。 一致性: 確保數(shù)據(jù)庫正確地改變狀態(tài)后,成功提交的事務(wù)。 隔離性: 使事務(wù)操作彼此獨(dú)立的和透明的,一個(gè)事務(wù)處理后的結(jié)果,影響了其他事務(wù),那么這個(gè)事務(wù)會(huì)撤回。 持久性: 確保提交的事務(wù)的結(jié)果或效果的系統(tǒng)出現(xiàn)故障的情況下仍然存在(軟、硬件崩潰后,InnoDB數(shù)據(jù)表驅(qū)動(dòng)會(huì)利用日志文件重構(gòu)修改). 2.MYSQL的事務(wù)處理主要有兩種方法(在數(shù)據(jù)庫命令行下) 1).用begin,rollback,commit來實(shí)現(xiàn) begin開始一個(gè)事務(wù) rollback事務(wù)回滾 commit 事務(wù)確認(rèn) 在這種方法時(shí),當(dāng)用commit確認(rèn)或者rollback回滾后,事務(wù)處理功能將結(jié)束,如果要開啟下一個(gè)事務(wù),需要從新用begin開始 2).直接用set來改變mysql的自動(dòng)提交模式 //mysql將每一條SQL語句當(dāng)做一個(gè)事務(wù),當(dāng)輸入一條SQL語句并以";"接受時(shí)系統(tǒng)將提交這一條SQL語句并執(zhí)行 mysql默認(rèn)是自動(dòng)提交的,也就是你提交一個(gè)query,就直接執(zhí)行!可以通過 set autocommit = 0 禁止自動(dòng)提交 set autocommit = 1 開啟自動(dòng)提交 在這種方法時(shí),當(dāng)用commit確認(rèn)或者rollback回滾后,事務(wù)處理功能將不會(huì)結(jié)束,而是同時(shí)開啟了新的事務(wù)!必須用set autocommit = 1 來關(guān)閉事務(wù)功能
    查看全部
  • $sql="SELECT id,username,age FROM user WHERE id>=?"; $mysqli_stmt=$mysqli->prepare($sql); $id=20; $mysqli_stmt->bind_param('i',$id); if($mysqli_stmt->execute()){ //bind_result():綁定結(jié)果集中的值到變量,必須與查詢結(jié)果字段一一對應(yīng) $mysqli_stmt->bind_result($id,$username,$age); //遍歷結(jié)果集 //如果調(diào)用$mysqli_stmt->store_result()將數(shù)據(jù)先按照一定的格式存儲(chǔ),則可調(diào)用$mysqli_stmt->data_seek()來控制輸出那一條記錄 while($mysqli_stmt->fetch()){ echo '編號(hào):'.$id,'<br/>'; echo '用戶名:'.$username,'<br/>'; echo '年齡:'.$age.'<br/>'; echo '<hr/>'; } } $mysqli_stmt->free_result(); $mysqli_stmt->close(); $mysqli->close();
    查看全部
  • 1.注入的解釋: //如果 $name=“or 1=1#”; $pwd=md5(“123123”); $sql="select * from users where username='$name' andpassword='$pwd'"; //則以上的SQL語句會(huì)被php解析為: select * from users where username='' or 1=1#' and password=md5(‘’) 因?yàn)椤?”在mysql中是注釋符,這樣井號(hào)后面的內(nèi)容將被mysql視為注釋內(nèi)容,這樣SQL語句就變成了: select * from users where username='' or 1=1 因?yàn)?永遠(yuǎn)=1,所以where條件永遠(yuǎn)真,則結(jié)果就相當(dāng)于select * from users 2.因?yàn)轭A(yù)定義在$mysqli_stmt=$mysqli->prepare($sql);時(shí)已經(jīng)將SQL模板傳遞給mysql數(shù)據(jù)庫并讓數(shù)據(jù)庫系統(tǒng)做語句分析,之后的傳遞參數(shù)將不對SQL語句做分析,所以不會(huì)出現(xiàn)上面所說的注入. 3.獲得結(jié)果集 $mysqli_stmt->store_result(); 4.當(dāng)查詢語句返回的是結(jié)果集時(shí),會(huì)因?yàn)樵趦?nèi)存中存儲(chǔ)結(jié)果集而占用空間,所以在之后不需要相應(yīng)結(jié)果集的情況下釋放結(jié)果集,回收內(nèi)存空間. //釋放結(jié)果集 $mysqli_stmt->free_result(); 5.關(guān)閉預(yù)處理語句 $mysqli_stmt->close();
    查看全部
  • 1.預(yù)處理工作流程 //定義SQL語句模板(用?做為占位符) $sql="INSERT user(username,password,age) VALUES(?,?,?)"; //將查詢傳給mysql預(yù)處理,返回一個(gè)mysqli_stmt類對象 $mysqli_stmt=$mysqli->prepare($sql); //此時(shí)mysql會(huì)解析查詢,但不會(huì)執(zhí)行。 $username='king'; $password=md5('king'); $age=12; //將變量綁定到查詢占位符(s代表字符串,i代表整數(shù),d代表浮點(diǎn)數(shù),b代表布爾值) $mysqli_stmt->bind_param('ssi',$username,$password,$age); //執(zhí)行預(yù)處理語句 if($mysqli_stmt->execute()){ echo $mysqli_stmt->insert_id; echo '<br/>'; }else{ $mysqli_stmt->error; } //之后只用修改變量值與執(zhí)行即可重復(fù)使用預(yù)處理(不需要從新在此綁定參數(shù)$mysqli_stmt->bind_param()) $username='king1'; $password=md5('king1'); $age=22; $mysqli_stmt->execute(); 2.相比于直接執(zhí)行SQL語句,預(yù)處理語句有三個(gè)主要優(yōu)點(diǎn): 1).預(yù)處理語句大大減少了分析時(shí)間,值在$mysqli_stmt=$mysqli->prepare($sql);時(shí)mysql會(huì)分析語句. 2).綁定參數(shù)減少了服務(wù)器帶寬,你只需要發(fā)送查詢的參數(shù),而不是整個(gè)語句。 3).預(yù)處理語句針對SQL注入是非常有用的,因?yàn)閰?shù)值發(fā)送后使用不同的協(xié)議,保證了數(shù)據(jù)的合法性。
    查看全部
  • 執(zhí)行SQL查詢 建立一個(gè)數(shù)據(jù)表
    查看全部
    0 采集 收起 來源:MySQLi使用解析

    2017-02-09

  • 2.設(shè)置默認(rèn)的客戶端編碼方式 utf8
    查看全部
    0 采集 收起 來源:MySQLi使用解析

    2017-02-09

  • 1.建立到MySQL的連接并打開test數(shù)據(jù)庫,如果有錯(cuò)誤顯示錯(cuò)誤信息 @ 去掉默認(rèn)不顯示錯(cuò)誤信息的功能
    查看全部
    0 采集 收起 來源:MySQLi使用解析

    2017-02-09

  • mysqli類庫操作數(shù)據(jù)庫(下篇) 4.查看數(shù)據(jù)庫對象的相關(guān)信息(可以通過屬性查看,也可以通過方法查看,有些屬性不一定有對應(yīng)的方法可以獲取到) echo '客戶端的信息:'.$mysqli->client_info.’<br/>’; 或者echo $mysqli->get_client_info().’<br/>’; echo“客戶端的版本:”$mysqli->cilent_version.’<br/>’; 服務(wù)器信息 $mysqli->server_info; $mysqli->get_server_info(); 5.設(shè)置字符集: $mysqli->set_charset('utf8'); 6.執(zhí)行sql查詢 $sql=<<<EOF //定界符 CREATE TABLE IF NOT EXISTS mysqli( id TINYINT UNSIGNED AUTO_INCREMENT KEY, username VARCHAR(20) NOT NULL); EOF; $res = $mysqli->query($sql); /* 1).SELECT/DESC/DESCRIBE/SHOW/EXPLAIN執(zhí)行成功返回mysqli_result類型的對象(返回的是一個(gè)臨時(shí)對象,期沒有對象名,必須使用一個(gè)變量進(jìn)行接收,這里的mysqli_result并不是返回對象的名稱,不是變量),執(zhí)行失敗返回false 2).返回值可能是布爾值或者是mysqli_result對象(與mysql_query()類似,不同的是mysql_query()返回的是資源標(biāo)識(shí)符[內(nèi)存地址指針],對應(yīng)的$mysqli->query()返回的是對象)。 */ 7.關(guān)閉連接 $mysqli->close();
    查看全部
    0 采集 收起 來源:MySQLi使用解析

    2018-03-22

  • mysqli類庫操作數(shù)據(jù)庫(上篇) 通過mysqli類庫操作數(shù)據(jù)庫步驟: 1).建立到mysql的鏈接 2).打開指定的數(shù)據(jù)庫 3).設(shè)置默認(rèn)的客戶端的字符集 4).執(zhí)行的sql查詢 5).釋放結(jié)果集 6).關(guān)閉鏈接 1.建立到mydql數(shù)據(jù)的鏈接 $mysqli = new mysqli('localhost','root','root','test’);//通過構(gòu)造函數(shù)連接服務(wù)器并打開數(shù)據(jù)庫,第四個(gè)參數(shù)為數(shù)據(jù)庫名(此參數(shù)可以省略,之后再通過對象方法打開相應(yīng)數(shù)據(jù)庫) 或者$mysqli = new mysqli(); $mysqli->connect('127.0.0.1','root','root’,'test’);//通過對象方法連接服務(wù)器打開數(shù)據(jù)庫,第四個(gè)參數(shù)為數(shù)據(jù)庫名(此參數(shù)可以省略,之后再通過對象方法打開相應(yīng)數(shù)據(jù)庫) 2.打開指定的數(shù)據(jù)庫 $mysqli->select_db('test'); 3.驗(yàn)證是否打開數(shù)據(jù)庫成功 //$mysqli->connect_errno 錯(cuò)誤編號(hào) //$mysqli->connect_error 錯(cuò)誤信息 if($mysqli->connect_errno){ die('connect error:'$mysqli->connect_error); }
    查看全部
    0 采集 收起 來源:MySQLi使用解析

    2018-03-22

舉報(bào)

0/150
提交
取消
課程須知
學(xué)習(xí)本門課程之前,建議先了解一下知識(shí),會(huì)更有助于理解和掌握本門課程 1、掌握PHP基本的語言語法,掌握面向?qū)ο笾R(shí)。 2、了解數(shù)據(jù)庫相同的基礎(chǔ)知識(shí),能對數(shù)據(jù)進(jìn)行簡單的增刪改查。
老師告訴你能學(xué)到什么?
1、MySQLi基于面向?qū)ο笾谐S玫膬?nèi)容剖析。 2、MySQLi基于面向過程中常用的內(nèi)容剖析。 3、通過MySQLi實(shí)現(xiàn)無刷新評論系統(tǒng)。

微信掃碼,參與3人拼團(tuán)

微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復(fù)購買,感謝您對慕課網(wǎng)的支持!