FAQ |
Kalender |
![]() |
#1 | |||
|
||||
Medlem
|
Hej!
Jag använder mysql real escape string för att skydda min sida av sql injection. Men mysql real escape fungerar bara när man hämtar information från databasen.(t.ex. SELECT FROM USER....). När man skriver i databasen så fungerar inte mysql real escape string. T.ex. när man registrerar sig, skriver i gästbok osv. Om jag skriver ett sql injections kommand i gästbok så sparas den i databasen. Jag menar om jag skrev ' OR ''=' så sparas den i databasen som den är. Men om mysql real escape string fungerade så skulle ju denna vara så här: \' OR \'1\'=\'1. Är mysql real escape string bara för att skydda sig när man hämtar information från databasen? Tacksam för svar. |
|||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Har WN som tidsfördriv
|
Det funkar i alla typer av frågor, oavsett om du gör en insert eller update, alltså inte bara vid en select. Du har nog något fel i din kod om du upplever problem. Du kan inte dela med dig av lite källkod så ser någon här snart felet..
|
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Flitig postare
|
Det är ju exakt det som man vill åstadkomma, utan mysql_real_escape hade ju den delen av strängen inte tolkats som något som skulle sparas i databasen utan som en del av själva frågan.
|
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Medlem
|
Använd mysql_real_escape vid select/update/insert till databasen, och när du skriver ut information from databasen använd tex htmlspecialchars.
Eller har jag missuppfattat din fråga? Senast redigerad av ChristianCarlsson den 2009-12-28 klockan 21:11 |
||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Medlem
|
Citat:
Citat:
Du har förståt rätt. Tack för tipset om htmlspecialchars. Ska prova den. |
|||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Har WN som tidsfördriv
|
använder htmlspecialchars varje gång jag tar ut ur databasen! om du vill bli helt säker så använd den... här är hur du lir "skyddad"
PHP-kod:
|
||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Medlem
|
Citat:
|
|||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Har WN som tidsfördriv
|
Har inte kollat på det, men när jag byggde ett kommentar-system så vart jag tvungen att använda mig av just htmlspecialchars, fast innan jag hittade htmlspecialchar så testade jag alla andra möjliga, är nästan 100% på att jag testade htmlentities och alla utom just htmlspecialchars gick utan resultat. kan oxå vara ett programmeringsfel av mig so mgjort att htmlentities inte funkade...
|
||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Medlem
|
Citat:
Där står följande: This function is identical to htmlspecialchars() in all ways, except with htmlentities(), all characters which have HTML character entity equivalents are translated into these entities. |
||
![]() |
![]() |
![]() |
#10 | ||
|
|||
Klarade millennium-buggen
|
Htmlspecialchars översätter endast
Citat:
Htmlentities översätter även andra tecken vilket kan ha sin fördelar i andra sammanhang. |
||
![]() |
![]() |
Svara |
Ämnesverktyg | |
Visningsalternativ | |
|
|