sql >> Database >  >> RDS >> Mysql

Mysql + php met speciale tekens zoals '(Apostrof) en (Aanhalingsteken)

Uw sql-tekenreeks wordt:

INSERT INTO `table` (`row1`) VALUES ('google's site')

Wat geen geldige verklaring is. Zoals Nanne schreef, ontsnap aan de string in ieder geval met mysql_real_escape_string :http ://php.net/manual/en/function.mysql-real-escape-string.php

En lees over sql-injectiehttp://en.wikipedia.org/wiki/SQL_injection

Denk even na:als iemand dit plaatst:$_POST['text'] met waarde:');delete from table;....

U kunt afscheid nemen van uw gegevens :)

Altijd input filteren/ontsnappen!

BEWERKEN:vanaf PHP 5.5.0 zijn mysql_real_escape_string en de mysql-extensie verouderd. Gebruik in plaats daarvan de mysqli-extensie en de functie mysqli::escape_string



  1. SQL-query om database te maken in MySQL

  2. SQLite groeperen op / uren, dagen, weken, jaar tellen

  3. Oracle verbinden met Amazon Aurora

  4. Wat zijn de verschillen tussen SQL en MySQL