FAQ |
Kalender |
2008-03-02, 16:16 | #11 | ||
|
|||
Nykomling
|
Du behöver inte escape'a varje enskild POST-/GET-värde.
Citat:
|
||
Svara med citat |
2008-03-02, 17:57 | #12 | ||
|
|||
Klarade millennium-buggen
|
mysql(i)_real_escape_string($varlabel,$link_identi fier) heter det,
där $link_identifier är en handler till en uppkoppling av databasen. Om man inte skickar med den så kan det bli fel. |
||
Svara med citat |
2008-03-02, 23:09 | #13 | ||
|
|||
Mycket flitig postare
|
Citat:
|
||
Svara med citat |
2008-03-03, 04:58 | #14 | ||
|
|||
Medlem
|
Citat:
|
||
Svara med citat |
2008-03-03, 10:35 | #15 | ||
|
|||
Mycket flitig postare
|
mysql(i)_real_escape_string() fungerar lite olika beroende på vilken teckentabell databasen använder. Vilka tecken som anses "problematiska" är alltså olika beroende på ISO-8859-1 och UTF-8 t.ex.
Så om du har två anslutningar mot olika databaser som kör olika charsets så kan du få situationer där SQL-injections är möjliga om du inte hänvisar till rätt databasanslutning när du kör mysql(i)_real_escape_string(). Detta är dock väldigt ovanligt eftersom det flesta enbart har en databas som scriptet jobbar mot, och i de fall man har flera databaser så har dessa i oftast samma charset. Men visst, Magnus_A har en poäng. Det är skadar inte att ta med link identifier. |
||
Svara med citat |
2008-03-03, 10:49 | #16 | |||
|
||||
Klarade millennium-buggen
|
Citat:
<?php echo mysqli_real_escape_string('hej'); ?> Utan föregående uppkoppling så försöker php logga in utan lösenord, sällan en bra ide: Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Användare 'www-data'@'localhost' är ej berättigad att logga in (Använder lösen: NO) in /var/www/*** on line * Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /var/www/**** on line * Och för mysqli: Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in /var/www**** |
|||
Svara med citat |
Svara |
|
|