sql >> Databáze >  >> RDS >> Mysql

Mysql Real Escape String PHP funkce Přidání \ do mé položky pole

Pokud získáváte data $content z formuláře (a nikoli „tak jak je“ v kódu PHP) , možná máte problém kvůli uvozovkám Magic (viz magic_quotes_gpc )

V podstatě :

Pokud jsou povoleny magické uvozovky (můžete to zkontrolovat ve výstupu phpinfo() , například) , dostanete takový "dvojitý útěk" :

  • Tyto postavy budou jednou uniknuty magickými uvozovkami,
  • A pak budou podruhé uniknuty pomocí mysql_real_escape_string


Dobrým řešením v tomto případě není přestat používat mysql_real_escape_string , ale deaktivovat magic_quotes_gpc ve vaší konfiguraci...

... Ale vzhledem k tomu, že k němu nemáte přístup, budete muset efekt magických citátů „zvrátit“ voláním stripslashes na vstupu, který dostáváte jako $_GET a $_POST , než jej začnete používat.

Poznámka:Jedná se o radu, která je uvedena na manuálové stránce mysql_real_escape_string (citace) :



  1. Jak vytvořit blog v PHP a MySQL databázi - Admin Posts

  2. Spring-Boot, nelze uložit řetězec unicode v MySql pomocí spring-data JPA

  3. Spouštěč SQLite

  4. mysql LOAD DATA INFILE s automatickým zvýšením primárního klíče