亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Maison Bibliothèques PHP Autres bibliothèques Bibliothèque de classes PHP pour empêcher l'injection SQL
Bibliothèque de classes PHP pour empêcher l'injection SQL
<?php
class sqlsafe {
  private $getfilter = "'|(and|or)\b.+?(>|<|=|in|like)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)";
  private $postfilter = "\b(and|or)\b.{1,6}?(=|>|<|\bin\b|\blike\b)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)";
  private $cookiefilter = "\b(and|or)\b.{1,6}?(=|>|<|\bin\b|\blike\b)|\/\*.+?\*\/|<\s*script\b|\bEXEC\b|UNION.+?SELECT|UPDATE.+?SET|INSERT\s+INTO.+?VALUES|(SELECT|DELETE).+?FROM|(CREATE|ALTER|DROP|TRUNCATE)\s+(TABLE|DATABASE)";
  public function __construct() {
    foreach($_GET as $key=>$value){$this->stopattack($key,$value,$this->getfilter);}
    foreach($_POST as $key=>$value){$this->stopattack($key,$value,$this->postfilter);}
    foreach($_COOKIE as $key=>$value){$this->stopattack($key,$value,$this->cookiefilter);}
  }
  public function stopattack($StrFiltKey, $StrFiltValue, $ArrFiltReq){
    if(is_array($StrFiltValue))$StrFiltValue = implode($StrFiltValue);
    if (preg_match("/".$ArrFiltReq."/is",$StrFiltValue) == 1){
      $this->writeslog($_SERVER["REMOTE_ADDR"]."    ".strftime("%Y-%m-%d %H:%M:%S")."    ".$_SERVER["PHP_SELF"]."    ".$_SERVER["REQUEST_METHOD"]."    ".$StrFiltKey."    ".$StrFiltValue);
      showmsg('您提交的參數(shù)非法,系統(tǒng)已記錄您的本次操作!','',0,1);
    }
  }
  public function writeslog($log){
    $log_path = CACHE_PATH.'logs'.DIRECTORY_SEPARATOR.'sql_log.txt';
    $ts = fopen($log_path,"a+");
    fputs($ts,$log."\r\n");
    fclose($ts);
  }
}

Cette bibliothèque de classes construit d'abord les paramètres de la fonction, puis vérifie et écrit le journal, et enfin vérifie le journal d'injection SQL. C'est une bibliothèque de classes PHP très utile pour empêcher l'injection SQL


Clause de non-responsabilité

Toutes les ressources de ce site proviennent d'internautes ou sont réimprimées par les principaux sites de téléchargement. Veuillez vérifier vous-même l'intégrité du logiciel?! Toutes les ressources de ce site sont uniquement à titre de référence d'apprentissage. Merci de ne pas les utiliser à des fins commerciales. Sinon, vous serez responsable de toutes les conséquences ! En cas d'infraction, veuillez nous contacter pour la supprimer. Coordonnées : admin@php.cn

Article connexe

Fonction PHP pour empêcher l'injection SQL Fonction PHP pour empêcher l'injection SQL

22 Jul 2025

La méthode de base pour empêcher l'injection SQL consiste à utiliser des instructions de prétraitement et des requêtes paramétrées. 1. Utilisez des instructions de prétraitement PDO pour lier l'entrée de l'utilisateur via des marques de questions ou des paramètres nommés pour vous assurer que l'entrée n'est pas exécutée sous forme de code SQL; 2. Utilisez la méthode de prétraitement et de Bind_param de Mysqli pour spécifier clairement le type de paramètre pour empêcher l'entrée malveillante de falsifier la structure SQL; 3. évitez les entrées d'échappement manuellement, telles que MySqli_Real_escape_String, car elle est sujette à des erreurs et à une sécurité insuffisante; 4. Utilisez des fonctions de filtre intégrées PHP pour vérifier les entrées, telles que Filter_Input et Intval, pour assurer la légalité des données d'entrée. Ces méthodes peuvent améliorer efficacement la sécurité des applications PHP et empêcher SQL

Pourquoi l'échappement de cha?ne est-il crucial pour empêcher l'injection SQL et les erreurs de données?? Pourquoi l'échappement de cha?ne est-il crucial pour empêcher l'injection SQL et les erreurs de données??

31 Dec 2024

Qu'est-ce que l'échappement de cha?ne et pourquoi est-ce crucial ? L'échappement de cha?ne est une technique utilisée pour clarifier l'utilisation prévue des guillemets et autres...

Comment utiliser en toute sécurité l'extension MySQL en PHP pour empêcher l'injection SQL?? Comment utiliser en toute sécurité l'extension MySQL en PHP pour empêcher l'injection SQL??

20 Dec 2024

Comment créer des requêtes de base de données sécurisées avec l'extension MySQLL'extension MySQL offre une approche rudimentaire mais fonctionnelle des interactions avec les bases de données...

Les instructions préparées peuvent-elles gérer les noms de tables paramétrés pour empêcher l'injection SQL?? Les instructions préparées peuvent-elles gérer les noms de tables paramétrés pour empêcher l'injection SQL??

23 Jan 2025

Liaison des noms de table dans les instructions préparéesQuestion?:Est-il possible de paramétrer le nom de la table dans une instruction SQL préparée, ce qui gêne SQL...

PHP MySQLi?: dois-je échapper à TOUTES les variables avec `mysqli_real_escape_string` pour empêcher l'injection SQL ? PHP MySQLi?: dois-je échapper à TOUTES les variables avec `mysqli_real_escape_string` pour empêcher l'injection SQL ?

07 Dec 2024

PHP MySQLI?: Prévenir l'injection SQLLors du développement d'applications Web, la protection contre les attaques par injection SQL est cruciale. Utiliser le...

Comment implémenter des requêtes paramétrées avec une connexion MySQL en PHP pour empêcher l'injection SQL ? Comment implémenter des requêtes paramétrées avec une connexion MySQL en PHP pour empêcher l'injection SQL ?

01 Nov 2024

Requêtes paramétrées avec connexion MySQL en PHPAssurer la sécurité de vos applications de base de données est primordiale, et les requêtes paramétrées sont...

See all articles