Autor | Zpráva | ||
---|---|---|---|
leorond Profil |
#1 · Zasláno: 19. 8. 2016, 09:26:38
Ahoj, potřeboval bych udělat pěkné url ale narazil jsem na problém.
Když mé adresy jsou index.php?strana=pages/home a chci například aby stránkování bylo /home/strana- $ tak jak bude vypadat zápis v .htaccess?
Prozatím mám tento zápis který zařídí adresu /strana- $
RewriteRule ^strana-(.*)$ index.php?strana=pages/home&stranka=$1 Zkoušel jsem změnit ^strana-(.*)$ na ^home/strana-(.*)$ ale bez výsledku.
Děkuji za radu |
||
Taps Profil |
#2 · Zasláno: 19. 8. 2016, 10:41:56
Musis pridat dalsi promennou
|
||
leorond Profil |
#3 · Zasláno: 19. 8. 2016, 10:46:44
Taps:
Ano to vím ale nepřišel jsem na to jak ji tam přidat, zkusil jsem některé návody ale zkrátka mi to nefungovalo |
||
juriad Profil |
Snad bude fungovat toto:
RewriteRule ^(.*)/strana-(.*)$ index.php?strana=pages/$1&stranka=$2 Mimochodem, asi bych zvolil jiné pojmenování než strana a stranka , jsou příliš blízko sebe, budeš v tom dělat chyby.
|
||
leorond Profil |
#5 · Zasláno: 19. 8. 2016, 11:33:38
juriad:
Bohužel nefunguje, zkusil jsem ještě dát RewriteRule ^home(.*)/strana-(.*)$ index.php?strana=pages/$1&stranka=$2 také jsem zkusil RewriteRule ^home(.*)/strana-(.*)$ index.php?strana=pages/home&stranka=$1 stránku to načte ale nestránkuje |
||
Taps Profil |
#6 · Zasláno: 19. 8. 2016, 12:01:34
A v jakem tvaru mas odkazy?
|
||
leorond Profil |
Myslíš když to načte ale nefunguje?
http://localhost/home/strana- $
přitom mi ale normálně funguje bez /home když nastavím RewriteRule ^strana-(.*)$ index.php?strana=pages/home&stranka=$1 tak proč nefungují dvě proměnné když jednu to pustí v pořádku? Je možné že dělá problémy lomítko za pages? |
||
Taps Profil |
#8 · Zasláno: 19. 8. 2016, 12:25:12
Myslim url kterou mas v tagu a href
|
||
leorond Profil |
Při tomto nastavení
RewriteRule ^strana-(.*)$ index.php?strana=pages/home&stranka=$1 mám href=\"/strana-".$url_cislo."\" Takže při tomto nastavení RewriteRule ^(.*)/strana-(.*)$ index.php?strana=pages/$1&stranka=$2 By mělo být href=\"/home/strana-".$url_cislo."\" Nebo se pletu? |
||
Taps Profil |
#10 · Zasláno: 19. 8. 2016, 13:17:20
V odkaze nevidim promennou pro strankovani
|
||
leorond Profil |
Dobré ráno, tak jsem to stále nevyřešil, zkusil jsem nepřeberné množství variant a stále to nefunguje.
Ok tak jsem si trochu nastudoval RewriteRule a ted už mi to funguje, stačilo to udělat takto
RewriteRule ^([a-zA-Z0-9_-]+)/?$ index.php?strana=pages/$1 [QSA] RewriteRule ^(.*)/strana-(.*)$ index.php?strana=pages/$1&stranka=$2 |
||
leorond Profil |
#12 · Zasláno: 20. 8. 2016, 11:04:24
Otázka, co mám udělat aby mi to bralo i jiné složky než jen pages?
Mohu tam přidat nějak výjimku? |
||
juriad Profil |
#13 · Zasláno: 20. 8. 2016, 11:25:16
leorond:
Logicky, v přepisu můžeš použít jenom informace, které jsou dostupné v původní adrese. Z něčeho musíš poznat, o jakou složku se jedná. Když už jsi si nastudoval RewriteRule, začni premýšlet o tom, jaké všechny typy adres na webu budeš mít. Zatím mi přijde, že to lepíš dohromady a občas si vzpomeneš, že chceš něco přidat. Možná se podívej na Řešení některých častějších problémů (FAQ) » Univerzální obecné pravidlo. Je to jedno pravidlo, které přesune logiku do PHP. Mimochodem, ta pravidla lze napsat lépe; tu část před lomítkem můžeš obecně napsat jako: ([^/]+) (posloupnost znaků, které nejsou lomítkem).
Přesouvám vlákno do Konfigurace webového serveru. |
||
leorond Profil |
#14 · Zasláno: 20. 8. 2016, 12:00:08
Tak jinak, počítám že chceš docílit toho abych si udělal nejdříve adresy
example.com?url=jedna/dva/tri Mám pro tebe asi novinku ale já už mám adresy example.com?url=jedna/dva/tri teď to potřebuju zapsat do .htaccess tak abych mohl includovat z více složek a ne jen z té jedné |
||
juriad Profil |
#15 · Zasláno: 20. 8. 2016, 13:15:38
leorond:
Z adresy example.com/pes nelze zjistit, do jaké složky patří. Musíš tedy navrhnout adresy tak, aby to z nich bylo poznat (prostředky htaccess).
Má se pes směřovat do složky pages , zvirata , nebo co-si-date-dnes-k-obedu ?
|
||
Časová prodleva: 9 let
|
0