ZoRaC Skrevet 2. januar 2004 Del Skrevet 2. januar 2004 Hva bør man gjøre med data fra et "form" før man kjører en query mot databasen? Vet at man bør bruke addslashes (og removeslashes), men er det mer man bør gjøre? Lenke til kommentar
andreasn Skrevet 3. januar 2004 Del Skrevet 3. januar 2004 Nå er det en stund siden jeg har programmert i PHP, men det kan være greit å fjerne enkelte tegn, som feks < > m.m til ASCII-kode. Kodene finner du her. Det er også en fordel å sjekke at de dataene som er nødvendige er fylt ut, kanskje også at de er fylt ut riktig. Lenke til kommentar
ZoRaC Skrevet 5. januar 2004 Forfatter Del Skrevet 5. januar 2004 Finnes det noen egen funksjon for å fjerne "skummle tegn"? Sjekker at data er fylt ut, så den er grei! Har en gjestebok. Kom til å tenke på at det er jo en smal sak å legge inn JS og annen dritt i den (font size=100, osv) hvordan kan jeg sikre meg mot slikt? (vil at de skal kunne bruker <b>, <u>, <i>, <p>, <a>) Lenke til kommentar
Gilbert Skrevet 5. januar 2004 Del Skrevet 5. januar 2004 (endret) $string = strip_tags($string, '<b><u><i><p><a>'); strip_tags fjerner html og php, bortsett fra de du oppgir. EDIT: tyrkleif Endret 5. januar 2004 av fjartan Lenke til kommentar
???????? Skrevet 5. januar 2004 Del Skrevet 5. januar 2004 (endret) tipsene til "fjartan" og "ZoRaC" er bra dersom du er redd for hvordan outputen av data'en blir - det hjelper deg ikke mye mot hackere som vil "endre" litt på innholdet i queryen. Mange bruker addslashes og det fungerer bra - men php har også en egen funksjon for å passe på at data'en ikke er farlig - mysql_escape_string() Glem ikke å eventuelt fjerne % og _ Endret 6. januar 2004 av ???????? Lenke til kommentar
ZoRaC Skrevet 5. januar 2004 Forfatter Del Skrevet 5. januar 2004 ????????: Hvorfor linker du til "https://www.bizbuysell.com/"? Kan jeg bruke mysql_escape_string() i stedet for addslashes? Eller må jeg ha begge? Var visst en del svakheter med strip_tags også, men tror jeg skal bruke denne: function realsafehtml($str) { // Don't do anything if there's no difference or if the original string is empty $oldstr = ""; while($str != $oldstr) // Loop until it got no more effect { $oldstr = $str; //nuke script and header tags and anything inbetween $str = preg_replace("'<script[^>]*>.*</script>'siU", "", $str); $str = preg_replace("'<head[^>]*>.*</head>'siU", "", $str); //listed of tags that will not be striped but whose attributes will be $allowed = "br|b|i|p|u|a|center|hr"; //start nuking those suckers. don you just love MS Word's HTML? $str = preg_replace("/<((?!\/?($allowed)\b)[^>]*>)/xis", "", $str); $str = preg_replace("/<($allowed).*?>/i", "<\\1>", $str); } return $str; } (fra php.net) Lenke til kommentar
???????? Skrevet 6. januar 2004 Del Skrevet 6. januar 2004 Hehe... har rettet linken nå! Du trenger ikke å bruke begge deler, de gjør ca. samme ting. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå