Gå til innhold

quote_smart - stripslash etterpå?


Anbefalte innlegg

Videoannonse
Annonse
Skrevet

Det heter mysql_real_escape_string() og nei, det er nok ikke nødvendig med begge to. Faktisk vil du vel motvirke effekten siden du fjerner \ ?

Skrevet

Det er unødvendig med begge deler, jeg anbefaler og lage en funksjon. :)

 

<?php

function secure($str)
{
   $str = mysql_real_escape_string($str);
}
?>

 

Så bruker du bare secure($string);.

Istede for og skrive mysql_real_escape_string($string); :)

Skrevet

Hmm.. kanskje jeg har misforstått nå. Men... hvis jeg kjører mysql_real_escape_string.. også blir noe quote. Må jeg da kjøre stripslashes på det jeg henter ut? Eller forsvinner \ fra det jeg tar ut? Og en annen ting... trenger jeg å sjekke om magic_quotes er på, før jeg kjører en slik funksjon? Eller sjekker den funksjonen det for meg? slik at det ikke bli quota to ganger...

Skrevet
Hmm.. kanskje jeg har misforstått nå. Men... hvis jeg kjører mysql_real_escape_string.. også blir noe quote. Må jeg da kjøre stripslashes på det jeg henter ut? Eller forsvinner \ fra det jeg tar ut? Og en annen ting... trenger jeg å sjekke om magic_quotes er på, før jeg kjører en slik funksjon? Eller sjekker den funksjonen det for meg? slik at det ikke bli quota to ganger...

5334355[/snapback]

Når du skal hente det ut må du kjører stripslashes ja. Jeg ville overhode ikke stolt sånn veldig på magic_qoutes. Det tar ikke ut alt som er farlig for mysql. Derfor er det lurt å kjøre stripslashes før mysql_real_escape om den står på siden man da får vekk en rekke andre farlige tegn.

Skrevet (endret)
Hm... så det er litt uenighet her?

5334408[/snapback]

For å skissere det opp slik jeg ville gjort det:

Hvis magic_quote er :

Stripslash først og så mysql_real_escape_string etterpå før man legger det i DB. Stripslash på dataene når man henter de ut.

 

Hvis magic_qoute er av:

mysql_real_escape_string før man legger det i DB. Stripslash på dataene når man henter de ut.

 

Gjort om til kode blir det

if(get_magic_quotes_gpc())
$source = stripslashes($source);
$source = mysql_real_escape_string($source);

Endret av Ernie

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...