header("Content-type: text/html;charset=utf-8");
//mysqli操作mysql数据库(面向对象方式)
//1、创建MySQLi对象
$mysqli =new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die("连接失败".$mysqli->connect_error);
}
//2、操作数据库(发送sql)
$sql="select *from user1";
//3、处理结果
$res =$mysqli->query($sql);
//var_dump($res);
//fetch_assoc \fetch_array \fetch_object
while($row=$res->fetch_row()){
var_dump($row);
/* foreach($row as $val){
echo '--'.$val;
}
echo '
';*/
}
//4、关闭资源
$res->free();
$mysqli->close();
?>
下面是面向过程的
header("Content-type: text/html;charset=utf-8");
$mysqli=mysqli_connect("localhost","root","root","test");
if(!$mysqli){
die("连接失败".mysqli_connect_error());
}
$sql="select *from user1";
$res=mysqli_query($mysqli,$sql);
//var_dump($res);
while($row=mysqli_fetch_row($res)){
foreach ($row as $val){
echo '-'.$val;
}
echo '
';
}
//释放内存
mysqli_free_result($res);
mysqli_close($mysqli);
?>
2、在PHP中 使用mysqli扩展库对mysql 的dml操作
//使用mysqli 扩展库对mysql的crud 操作
header("Content-type: text/html;charset=utf-8");
$mysqli = new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die("连接失败".$mysql->connect_error);
}
//增加一条记录
//$sql="insert into user1 (name,password,email,age) values ('lucy',md5('lucy'),'lucy@163.com',17)";
//删除一条记录
//$sql="delete from user1 where id =80";
//更新一条记录
$sql="update user1 set age=20 where id=7";
$res=$mysqli->query($sql);
if(!$res){
echo "操作失败".$mysqli->error;
}else{
if($mysqli->affected_rows>0){
echo "成功";
}else{
echo "没有行受影响";
}
}
//关闭资源
$mysqli->close();
?>
3、进行封装
class SqlHelper{
private $mysqli;
//这里先写死,以后写死的东西用一个文件来配置
private static $host="localhost";
private static $user="root";
private static $pwd="root";
private static $db="test";
public function __construct(){
$this->mysqli=new MySQLi(self::$host,self::$user,self::$pwd,self::$db);
if($this->mysqli->connect_error){
die("连接失败".$this->mysqli->connect_error);
}
//设置字符集
$this->mysqli->query("set names utf8");
}
//dql operate
function execute_dql($sql){
$res =$this->mysqli->query($sql) or die($this->mysqli->error);
return $res;
}
//dml operate
function execute_dml($sql){
$res =$this->mysqli->query($sql) or die($this->mysqli->error);
if(!$res){
return 0;//失败
}else{
if($this->mysqli->affected_rows>0){
return 1;//成功
}else{
return 2;//没有行到影响
}
}
}
}
?>

セッション固定攻撃を防ぐための効果的な方法には、次のものがあります。1。ユーザーがログインした後にセッションIDを再生します。 2。安全なセッションID生成アルゴリズムを使用します。 3。セッションタイムアウトメカニズムを実装します。 4。HTTPSを使用したセッションデータを暗号化します。これらの措置は、セッションの固定攻撃に直面するときにアプリケーションが破壊されないようにすることができます。

セッションのない認証の実装は、サーバー側のセッションストレージなしですべての必要な情報がトークンに保存されるトークンベースの認証システムであるJSonWebtokens(JWT)を使用することで実現できます。 1)JWTを使用してトークンを生成および検証する、2)トークンが傍受されるのを防ぐためにHTTPSが使用されることを確認する、3)クライアント側にトークンを安全に保存する、4)改ざんを防ぐためにサーバー側のトークンを検証する、5)短期アクセスや長期的なリフレイを使用するなどのトークンの取り消しメカニズムを実装する。

PHPセッションのセキュリティリスクには、主にセッションハイジャック、セッションの固定、セッション予測、およびセッション中毒が含まれます。 1。HTTPSを使用してCookieを保護することにより、セッションハイジャックを防ぐことができます。 2。ユーザーがログインする前にセッションIDを再生することにより、セッションの固定を回避できます。3。セッションの予測は、セッションIDのランダム性と予測不可能性を確保する必要があります。 4.セッションの中毒は、セッションデータを確認およびフィルタリングすることで防ぐことができます。

PHPセッションを破壊するには、最初にセッションを開始してから、データをクリアしてセッションファイルを破壊する必要があります。 1。Session_start()を使用してセッションを開始します。 2。Session_unset()を使用して、セッションデータをクリアします。 3.最後に、session_destroy()を使用してセッションファイルを破壊して、データのセキュリティとリソースのリリースを確保します。

PHPのデフォルトセッションの保存パスを変更する方法は?次の手順で達成できます。Session_save_path( '/var/www/sessions'); session_start(); PHPスクリプトで、セッション保存パスを設定します。 session.save_path = "/var/www/sessions"をphp.iniファイルに設定して、セッションの保存パスをグローバルに変更します。 memcachedまたはredisを使用して、ini_set( 'session.save_handler'、 'memcached')などのセッションデータを保存します。 ini_set(

tomodifydatainaphpsession、starthessession withsession_start()、$ _sessiontoset、modify、orremovevariables.1)startthessession.2)

配列はPHPセッションに保存できます。 1。セッションを開始し、session_start()を使用します。 2。配列を作成し、$ _Sessionで保存します。 3. $ _Sessionを介して配列を取得します。 4.セッションデータを最適化してパフォーマンスを向上させます。

PHPセッションガベージコレクションは、有効期限が切れたセッションデータをクリーンアップするために確率メカニズムを通じてトリガーされます。 1)構成ファイルにトリガー確率とセッションのライフサイクルを設定します。 2)Cronタスクを使用して、高負荷アプリケーションを最適化できます。 3)データの損失を避けるために、ごみ収集の頻度とパフォーマンスのバランスを取る必要があります。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

WebStorm Mac版
便利なJavaScript開発ツール

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

メモ帳++7.3.1
使いやすく無料のコードエディター

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

ホットトピック









