Avatar billede nickern Nybegynder
16. juli 2007 - 15:29 Der er 17 kommentarer og
1 løsning

Fra index.php?id=322 til index/kurthansen/

Hejsa Eksperter

Jeg har lig et hurtigt spørgsmål - jeg kan sagtens lave den her sti "http://www.x.dk/biografi.php?id=322, men jeg vil gerne lave noget mere seo- og brugervenlig urls, så jeg får denne url http://www.x.dk/biografi/kurthansen - i dette tilfælde er kurthansen så sidens titel, som jeg har angivet i min db til Kurt Hansen

Nogen som kan hjælpe mig med dette?
Avatar billede leif Seniormester
16. juli 2007 - 15:55 #1
Dvs. kurthansen står i databasen ?
Avatar billede nickern Nybegynder
16. juli 2007 - 16:37 #2
Ja - i databasen står der bare "Kurt Hansen"
Avatar billede znopie Nybegynder
16. juli 2007 - 16:41 #3
Prøv at fjern mellemrum med f.eks.

$URL_title = "Kurt Hansen";
$URL_title = str_replace(" ", "", $URL_title);
echo "$URL_title";

:)
Avatar billede nickern Nybegynder
16. juli 2007 - 16:52 #4
ja - men hvordan får jeg så lagt det op i adressebaren så den hedder www.x.dk/biografi/kurthansen - det er det, jeg gerne vil frem til:)

Før gjorde jeg jo sådan biografi.php?id=999 som så ville svare til biografi.php?title=kurthansen men nu ønsker jeg kun der skal stå "/biografi/kurthansen/ er det muligt?
Avatar billede old-faithful Praktikant
16. juli 2007 - 17:19 #5
Hej. Jeg er ikke ekspert på det område, men jeg mener at du kan bruge en .htaccess rewrite til det, som f.eks. beskrevet her: http://www.webmastertips.us/tutorials/mod_rewrite.htm
Avatar billede nickern Nybegynder
16. juli 2007 - 20:02 #6
Ved ikke helt om det er det jeg søger... Pt hedder min url jo bare www.x.dk/y.php?id=**

Skal jeg virkelig til at lave en 301 redirect, og frygter for at det bliver opsamlet som blackhat seo?
Avatar billede ranglen Nybegynder
16. juli 2007 - 20:14 #7
med mod_rewrite tilgår man dit site med /biografi/kurthansen syntaxen
det bliver omskrevet internt til /y.php?id=** inden dit script ser det
Avatar billede ranglen Nybegynder
16. juli 2007 - 20:20 #8
eksperten.dk/spm/787756

kunne internt se sådan ud: eksperten.dk/visspm.php?spmid=787756
Avatar billede windcape Praktikant
16. juli 2007 - 20:21 #9
Det kan også gøres med Multiviews og php, men er meget komplext :p Og kræver stadig mulighed for at bruge en .htaccess til at configurer det
Avatar billede nickern Nybegynder
16. juli 2007 - 21:34 #10
Så er det bare mig der har misforstået det hele...

Nogen der gider prøve at forklare "mod_rewrite" på dansk? :)

Hvordan kan jeg gå fra en fil der hedder "biografi.php?id=[id]" til en fil der ser sådan ud "/biografi/[title]" hvor [id] er id'et fra min database og [title] er sidens angivne navn, som også ligger i min database.
Avatar billede leif Seniormester
16. juli 2007 - 21:58 #11
Har du kigget på linket som old-faithful lagde ? Det forklarer sådan forholdsvis nemt hvad mod_rewrite er.

mod_rewrite er kort det som hjælper dig til at lave tricket
Avatar billede leif Seniormester
16. juli 2007 - 22:16 #12
Et eksempel ud fra www.eksperten.dk/visspm.php?spmid=787756 kunne være:
RewriteRule ^spm/([^/\.]+)/?$ visspm.php?spmid=$1 [L]

Så kunne brugerne skrive:
www.eksperten.dk/spm/787756 så vil den åbne visspm.php og så vil visspm.php kigger på $_GET[spmid] som så viser dig dette
Avatar billede leif Seniormester
16. juli 2007 - 22:22 #13
I dit tilfælde ville det kunne ligne noget ala:
RewriteEngine on
RewriteRule ^biografi/([^/\.]+)/?$ visbiografi.php?title=$1 [L]


Så skal du bare ændre din visbiografi til at hente fra databasen ud fra $_GET[title]
Avatar billede nickern Nybegynder
16. juli 2007 - 22:51 #14
Tak leif... Jeg skal lige rode lidt med, hvordan jeg henter den på titlen i stedet for på id'et - så vender jeg nok tilbage:)
Avatar billede leif Seniormester
16. juli 2007 - 22:53 #15
Det er jo "bare" at udskifte din SQL sætning, men hvis du jo ikke har kurthansen stående i databasen skal der selvfølgelig lidt benarbejde til
Avatar billede nickern Nybegynder
16. september 2007 - 18:04 #16
ok leif - tak for at guide mig igennem - jeg har styr på det nu - ligger du et svar
Avatar billede leif Seniormester
16. september 2007 - 23:12 #17
Svar
Avatar billede leif Seniormester
17. september 2007 - 08:35 #18
Takker for point
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