Kezdőoldal » Számítástechnika » Weblapkészítés » Szép URL mod_rewrite-tal -...

Szép URL mod_rewrite-tal - ezt hogyan tudnám megoldani?

Figyelt kérdés

A következő a problémám.


oldal.com/index.php?product=ez-egy-termek

oldal.com/index.php?article=ez-meg-egy-cikk

oldal.com/index.php?user=o-pedig-egy-felhasznalo


Ezekből szeretném gyártani a következő hivatkozásokat:


oldal.com/ez-egy-termek

oldal.com/ez-meg-egy-cikk

oldal.com/o-pedig-egy-felhasznalo


Hogyan tudom meghatározni, hogy melyiket melyik URL-re irányítsa át?


Vagyis honnan fogja tudni, hogy az "ez-meg-egy-cikk"-hez az index.php?article= tartozik? Ezt milyen szabállyal adhatom meg?


Hasztalanul keresgélek már két napja. :(



2017. márc. 23. 22:25
1 2
 1/14 anonim ***** válasza:
Szerve olalon végig kell nézned mindhármat, mert az url-ből nem derül ki, hogy valami cikk, termék, vagy felhasználó.
2017. márc. 24. 03:36
Hasznos számodra ez a válasz?
 2/14 anonim ***** válasza:
Esetleg lehetne oldal.com/cikkek/ez_egy_cikk
2017. márc. 24. 03:38
Hasznos számodra ez a válasz?
 3/14 anonim ***** válasza:

kb így oldanám meg:

oldal.com/product/ez-egy-termek

oldal.com/article/ez-meg-egy-cikk

oldal.com/user/o-pedig-egy-felhasznalo


A sima oldalak mint bemutatkozás, kapcsolat...

oldal.com/bemutatkozas

oldal.com/kapcsolat

Azaz csak 1 elem van / jelekkel felbontva.

Míg az előbbieknél a első a mondja meg melyik modult hívja meg, a második pedig hogy pontosan melyikre van szükséged.

2017. márc. 24. 07:38
Hasznos számodra ez a válasz?
 4/14 anonim ***** válasza:

Szerintem is jobb /product , /article és /user tagolást használni, már csak SEO szempontból is, de ha mindenáron anélkül akarod, akkor úgy lehet, hogy csinálsz egy pivot táblát, kb így:


url|module|id

ez-egy-termek|product|22

ez-meg-egy-cikk|article|16


Tehát az URL alapján már ki tudod keresni, melyik modult és milyen ID-jő adatsort kell megjeleníteni. Nyilván így az URL-nek egyedinek kell lennie, tehát nem lehet egy cikknek és terméknek ugyanaz az URL-je.

2017. márc. 24. 08:35
Hasznos számodra ez a válasz?
 5/14 A kérdező kommentje:

Köszönöm a sok választ!


Muszáj megtartanom a struktúrát, több éves linkek, ezért nem szeretném közbeékelni a cikk/ felhasznalo/ stb. paramétereket.


"Tehát az URL alapján már ki tudod keresni, melyik modult és milyen ID-jő adatsort kell megjeleníteni."


Eddig jutottam én is, de hogyan kell ezt megcsinálni? :D

Minden url természetesen egyedi.

2017. márc. 24. 09:54
 6/14 anonim ***** válasza:
hát ez az! :)
2017. márc. 24. 10:03
Hasznos számodra ez a válasz?
 7/14 A kérdező kommentje:

Másik megoldás lehet esetleg, hogy vannak a szabályok a közbeékelt paraméterekkel (pl. com/article/ez-egy-cikk), és utólag tüntetem el az url-ből az /article-t (meg a /product-ot, meg a /user-t, stb.).


Az is érdekelne, hogyan lehetséges. :)

2017. márc. 24. 11:14
 8/14 anonim ***** válasza:

1. Milyen keretrendszert használsz? (ha használsz egyáltalán)

2. Megvan-e már a rewrite, vagy épp azt akarod most megírni?


Ha már megvan a rewrite, akkor egyszerű:


SELECT module, id FROM pivot WHERE url = <ide beteszed az URL-t>


Utána már csak annyi, hogy a megfelelő modult meghívod az ID-vel és így azt jeleníti meg, amit kell.

2017. márc. 24. 11:42
Hasznos számodra ez a válasz?
 9/14 A kérdező kommentje:

Húha, natívan htaccess-ből meg sem oldható?

Kicsit durvának tűnik, hogy minden egyes oldallekérésnél végigqueryzzek többezernyi rekordot csak azért, hogy megtalálja a rendszer, hogy melyik modult kell betöltenie.

2017. márc. 24. 12:09
 10/14 A kérdező kommentje:

1. Saját keretrendszer

2. Nincs meg erre a rewrite, legalábbis olyan, ami úgy működik, ahogy szeretném a fenti példában.

2017. márc. 24. 12:15
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!