Avatar billede bas Forsker
24. marts 2003 - 01:22 Der er 13 kommentarer og
1 løsning

Erstat \ med ingenting

Hej

Jeg er ved at lave en gæstebog i PHP.
Når jeg skriver anførselstegn i textarea bliver resultatet vist som \"bla bla \".
Kan jeg fjerne \'erne ?

Er det med en udgave af ereg_replace, eller hovrdan ?

På forhånd tak.

Hilsen Martin
Avatar billede 7th Praktikant
24. marts 2003 - 01:31 #1
Man kan gøre det på flere måder, men den nemmeste måde er (tror jeg nok)
$tekst = stripslashes ($tekst);
Avatar billede 7th Praktikant
24. marts 2003 - 01:36 #2
Du kunne også gøre det på denne måde...

function noslashes ($tagster)
{
$tagster = str_replace ("\\\\" , "\\" , $tagster);
$tagster = str_replace ('\"' , '"' , $tagster);
$tagster = str_replace ("\'" , "'" , $tagster);
return $tagster;
}

$tekst = noslashes ($tekst);

Så beholder du \ hvis brugeren vælger at indtaste det i textarea. Jeg er lidt usikker på om stripslashes ($tekst) nemlig fjerner alle \ helt.
Avatar billede 7th Praktikant
24. marts 2003 - 01:38 #3
Prøv at teste ved at indtaste følgende i textarea, og se hvad outputter bliver i gæstebogen.

','dato=23 og <123=\"123\">
Avatar billede andy Nybegynder
24. marts 2003 - 08:33 #4
Brug også htmlentities().

$tekst = htmlentities($tekst);
Læse mere her, http://dk.php.net/manual/en/function.htmlentities.php
Avatar billede supermand69 Nybegynder
24. marts 2003 - 13:14 #5
andy > hvis du bruger htmlentities skal du manuelt lave dem om til < > " igen...
Avatar billede andy Nybegynder
24. marts 2003 - 15:24 #6
ja?

bas, skrev at det var til hans gæstebog. Det er ikke så fedt hvis brugerne kan skrive html..
Avatar billede supermand69 Nybegynder
24. marts 2003 - 16:12 #7
andy -->
htmlentities() oversætter '<' til '&lt;', '>' til '$gt;', '"' til '&quot;' osv...

men du kan ikke gå den anden vej tilbage igen.. så skal du lave en strtr()
Avatar billede andy Nybegynder
24. marts 2003 - 17:44 #8
Jeg tror vi snakker forbi hinanden. Jeg vil ikke gå den anden vej.
Avatar billede supermand69 Nybegynder
24. marts 2003 - 17:55 #9
andy > ok... :)

function convert($str)
{
    $str = str_replace("\\", '', $str);
    $str = htmlentities($str);
    return $str;
}
Avatar billede andy Nybegynder
24. marts 2003 - 18:22 #10
<script>
window.location = 'http://blahblah.com';
</script>

Den er jo ikke så sjov vel? :D
Avatar billede 7th Praktikant
08. april 2003 - 17:08 #11
Sjovt nok tror jeg det snart må være lukketid. Du har forlængst fået et svar på dit spørgsmål, respekter det !
Avatar billede bas Forsker
08. april 2003 - 18:14 #12
Beklager at jeg har været så længe om at lukke
mit spørgsmål.
Jeg har haft meget at se til, og havde glemt
at spørgsmålet stadigvæk var aktivt.

Jeg takker mange gange for svarene.

Hilsen Martin
Avatar billede 7th Praktikant
08. april 2003 - 18:22 #13
OK, det er hvad der kan ske :) Takker for points.
Avatar billede bas Forsker
08. april 2003 - 18:28 #14
Det er bare ok :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester