Avatar billede webcreator Nybegynder
13. august 2003 - 13:23 Der er 17 kommentarer og
1 løsning

W3C validering ej mulig. Server tilføjer PHPSESSID på links

Hej.

Jeg har fået egen server, som opretter sessions, ved at tilføje dem mine links.

Disser ser sådan ud :

=""><a href="soeg.php?kate=Artikel&PHPSESSID=1ecec48e8085f27d41d1c803916b0 ....

Problemet er, at det self. skal se sådan ud :

=""><a href="soeg.php?kate=Artikel&amp;PHPSESSID="1ec9832ec48e8003916b0"...

Altså & skal laves til &amp; og der skal "-tegn uden om ID'et. Kan det laves i PHP ?

Jeg kan sagtens erstatte &PHPSESSID= til &amp;PHPSESSID=" . Problemet opstår, når jeg skal have "-tegnet på i "enden" af Session-ID'et
Avatar billede razor Nybegynder
13. august 2003 - 13:24 #1
Ret arg_seperator i php.ini
Avatar billede pchris Nybegynder
13. august 2003 - 15:15 #2
Jeg forstår ikke hvorfor du vil have "-tegn omkring ID'et, men det må du selv bestemme.

Jeg mener at W3C anbefaler at du bruger ; som separator mellem argumenter.
Du kan få PHP til at generere dem automatisk. Du kan f.eks. lave en .htaccess fil og tilføje:

php_value arg_separator.output ";"
php_value arg_separator.input ";"

til den. Så er både PHP og W3C glade.

Du kan også overbevise PHP om at den ikke skal overføre PHPSESSID via URL'en, men i stedet bruge en cookie. Så skal du sætte PHP variablene

session.use_cookies true
og session.use_only_cookies true
og session.use_trans_sid false
Avatar billede webcreator Nybegynder
13. august 2003 - 18:12 #3
Det med "-tegnene var vist også en fejl. Jeg vrøvlede lidt :)
Avatar billede webcreator Nybegynder
14. august 2003 - 09:48 #4
Jeg har allerede en .htaccess fil liggende, hvor jeg har en 404-fejl liggende i (så de få en lidt anderledes side, hvis de søger en ikke-eksisterende side på min server).

php_value arg_separator.output ";"
php_value arg_separator.input ";"

Kan ovenstående "ødelægge" noget som helst ? Det ville være noget skidt, hvis det berørte min MySQL database og al den anden PHP kode jeg har lavet.
Avatar billede webcreator Nybegynder
14. august 2003 - 09:48 #5
Og kan jeg placere disse koder i min eksisterende htaccess fil ? Jeg har hørt, at der helst kun må være én linie i en sådan fil.
Avatar billede webcreator Nybegynder
14. august 2003 - 09:55 #6
Hvad jeg helt nøjagtigt vil vide er, om det _kun_ påvirker hvordan PHPSESSID'et bliver tilføjet  på mine links ?
Avatar billede webcreator Nybegynder
14. august 2003 - 09:58 #7
Min fil ser nu sådan ud :

ErrorDocument 404 /nf.php
php_value arg_separator.output "amp;"  <-- tilføjet amp foran ;, som W3 foreslår det
Avatar billede pchris Nybegynder
14. august 2003 - 12:52 #8
Du kan sagtens have flere linier i .htaccess filen

Linien php_value arg_separator.output ";" ændrer den måde PHP tilføjer argumenter til URL'en. Altså ikke kun PHPSESSID, men alle argumenter som PHP kan finde på selv at tilføje. Det får du dog nok ikke problemer med.

Linien php_value arg_separator.input ";" ændrer den måde PHP fortolker en URL og splitter den op i argumenter og værdier. Det kan/vil give dig problemer hvis du selv laver URL'er med argumenter og bruger & som separator.

Du skal ikke skrive "amp;".
W3C forslår kun ";" - se f.eks. http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2
PHP folkene vil gerne have os til at skrive &amp, men jeg vælger at følge W3C.

Så, JA, det kan give dig problemer. Alt efter hvordan du opbygger dine URL'er.
Avatar billede webcreator Nybegynder
16. august 2003 - 10:51 #9
Du har ret. Den validere fint når jeg kun bruger ;
Men W3 foreslår altså at man adskiller flere værdier med &amp;

fx. : side.php?id=3&amp;post=true

Browseren vil så oversætte &amp; til et normalt &-tegn.


Har jeg brug for at have både
php_value arg_separator.output ";"
php_value arg_separator.input ";"

i min .htaccess fil ?
Avatar billede pchris Nybegynder
18. august 2003 - 10:06 #10
Ja, det vil jeg mene.
Avatar billede webcreator Nybegynder
20. august 2003 - 19:16 #11
Jeg siger tak. Smid svar :)
Avatar billede razor Nybegynder
20. august 2003 - 19:45 #12
Hvad var problemet med mit svar så?
Avatar billede webcreator Nybegynder
20. august 2003 - 19:47 #13
Jeg brugte pchris' svar :)
Avatar billede webcreator Nybegynder
22. august 2003 - 15:03 #14
Pchris : Smider du lige et svar ? Vil gerne have lukket mit spm.
Avatar billede webcreator Nybegynder
24. august 2003 - 15:12 #15
razor >
Jeg er faktisk lidt interesseret i din løsning alligevel. Det andet holder ikke. Men faktisk vil jeg bare gerne have, at SESSID ikke bliver udskrevet. Er det muligt ?
Avatar billede webcreator Nybegynder
24. august 2003 - 15:12 #16
- og hvad vil det evt. betyde ?
Avatar billede webcreator Nybegynder
24. august 2003 - 15:13 #17
Jeg mener - kan det giver problemer, hvis dette ID ikke bliver udskrevet ?
Avatar billede webcreator Nybegynder
28. august 2003 - 22:04 #18
.
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