Avatar billede psitron Nybegynder
17. september 2002 - 13:07 Der er 15 kommentarer og
1 løsning

quote-tegn fra php -> php -> mysql

Jeg er så småt ved at være nogenlunde inde i PHP men jeg har et lille problem så jeg har svært ved at få et entydigt svar på fra php.net
Det drejer sig om at jeg er ved at lave et nyhedsscript som alle kan komme og skrive til (de skal naturligvis checkes af en admin før de vises på hovedsiden. I stil med nyhedssystemet fra PHP-nuke).
Det forgår således:
Bruger indtaster til form.
Form sender data til ny form hvor brugeren kan checke for stavefejl osv. Her bliver alle specialtegn såsom "'" og "\" lavet om til henholdsvis "\'" og "\\".
Når brugeren godkender form nr2 bliver det datasættet skrevet ind i mySQL databasen UNDTAGEN """ og alt efterfølgende!
""" tegnet er ellers blevet lavet om til "\"" men i tabellen indsætts kun "blah blah \" og ikke "blah blah \" blah blah".
Jeg kunne lave """ om til """ men hvis brugeren vil indsætte links (<a href="...) så virker det jo ikke helt så godt.

Det kan godt være jeg bare har overset en gylden PHP funktion til det her, men så er det vel bare at linke til den her ;)

På forhånd tak!
Avatar billede sone Nybegynder
17. september 2002 - 13:47 #1
Se stripslashes()
Avatar billede kimg Nybegynder
17. september 2002 - 14:07 #2
når du sætter ind:
$dintext = addslashes($dintext);

og når du trækker ud:
$navn = stripslashes($navn);

Kim
Avatar billede kimg Nybegynder
17. september 2002 - 14:08 #3
Gik lidt hurtigt copy and paste, navn = $dintext

Kim
Avatar billede psitron Nybegynder
17. september 2002 - 14:45 #4
Jamen PHP har jo allerede sat slashes på! Det er det jeg ikke forstår. Det virker også fint nok med de andre specialtegn, bare ikke quote. :(
Jeg har forsøgt mig med add/strip-slashes() rund omkring.
Avatar billede alrua Nybegynder
17. september 2002 - 16:44 #5
du skal bare lave query'et med enkelt-slashes omkring variablen.

Fx:

$query = "INSERT INTO nyheder SET text = '$dintekst'";
mysql_query($query);

osv.

-Alrua
Avatar billede psitron Nybegynder
17. september 2002 - 23:30 #6
alrua: det gør jeg også :)
Avatar billede sone Nybegynder
18. september 2002 - 09:55 #7
psitron: Det er stripslaches() du skal bruge - hvad har du forsøgt?
Avatar billede alrua Nybegynder
18. september 2002 - 17:19 #8
Har du ikke et sted du kan lægge hele koden?
Om ikke andet så bare her (ville dog være rart at have det er sted med showsource() ) :D

-Alrua
Avatar billede psitron Nybegynder
18. september 2002 - 20:23 #9
http://psi.tainkeh.net/source.txt

Det er stadig under udvikling så jeg mangler at rydde op og optimere men her er koden.
Problemet skulle være mellem linje 1 - 100.
Hvis der er forslag til optimering er de meget velkomne ;)
Avatar billede alrua Nybegynder
18. september 2002 - 20:26 #10
erm...den bliver vist parsed af php den fil der...

kan du ikke lave det en php-fil med

  showsource('filnavn.php');

eller sådan noget? :D

-Alrua
Avatar billede psitron Nybegynder
18. september 2002 - 20:32 #11
Hmm, det virkede da ellers fint da jeg prøvede txt filen.

Men her er den:
http://psi.tainkeh.net/showsource.php

BTW, det er show_source() med underscore ;P
Avatar billede alrua Nybegynder
18. september 2002 - 20:34 #12
nåja :)
Avatar billede alrua Nybegynder
18. september 2002 - 20:42 #13
jeg retter lige koden igennem :)
Avatar billede alrua Nybegynder
18. september 2002 - 20:54 #14
hmm...jeg har desværre ikke rigtig nogen mulighed for at teste det - men du skal nok bruge $_POST['variabel'] når du skal have fat i noget fra forms og $_GET['variabel'] når du skal have fat i noget fra url-parametrer...ved dog ikke hvad dit problem skyldes - jeg kan som sagt ikke teste det :(

-Alrua
Avatar billede psitron Nybegynder
19. september 2002 - 10:54 #15
Det er så i orden. Tak fordi du gad at kigge på det i hvert fald. Jeg skal nok finde på et eller andet... eller også dropper jeg bare projectet ;P
Avatar billede psitron Nybegynder
19. august 2008 - 14:07 #16
Lukker forældet spørgsmål.
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