Do nového roku jako lepší programátoři? Znovu otevíráme večerní školu programování. Nette framework, návrhové vzory, testování nebo vůbec poprvé kurzy ASP.NET dostupné odkudkoli v republice.
Avatar
oggymotslp
Člen
Avatar
oggymotslp:

Zdravím,

mám v databázi různé věci a každé má ID. Jak se dá udělat zkrácená adresa, nyní to mám www.web.cz/index.php?id=4

A vím, že jde udělat www.web.cz/4 jak to mám udělat ?

Jedná se o to, že každé ID má různý text a, tak aby se dalo sdílet ty texty.

Díky za odpovědi.

Odpovědět 8.2.2016 16:49
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
BlugW
Redaktor
Avatar
Odpovídá na oggymotslp
BlugW:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)$ index.php?id=$1
RewriteRule ^([a-zA-Z0-9]+)/$ index.php?id=$1

Zkus. Mělo by to fungovat.

Nahoru Odpovědět 8.2.2016 16:58
Pořiď si mac na www.appletrh.cz. Novinky a zajímavosti ze světa Apple na https://www.applemagazin.eu
Avatar
oggymotslp
Člen
Avatar
oggymotslp:

Zkusil jsem to, ale bez odezvy. Nevím zda to není tím, že mám nastavený špatně WebServer. Používám XAMPP a dle tutoriálů u složky webu mám dané AllowOverride All. Jen si nejsem jist, zda to není tím, že když se kouknu do té složky kde je htaccess, tak tam chybí ta tečka, může to být tím ?

Nahoru Odpovědět 8.2.2016 17:14
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na oggymotslp
David Hynek:

na konec ještě přidej [L,QSA]

Nahoru Odpovědět 8.2.2016 18:04
Čím víc vím, tím víc věcí nevím.
Avatar
oggymotslp
Člen
Avatar
Odpovídá na David Hynek
oggymotslp:

Na další řádek ? Nebo za to $1 ?

Nahoru Odpovědět  +1 8.2.2016 18:04
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
David Hynek
Redaktor
Avatar
David Hynek:

tedy:

RewriteRule ^([a-zA-Z0-9]+)$ index.php?id=$1 [L,QSA]
Nahoru Odpovědět 8.2.2016 18:04
Čím víc vím, tím víc věcí nevím.
Avatar
oggymotslp
Člen
Avatar
Odpovídá na David Hynek
oggymotslp:

Zatím to nic nedělá, je nutné restartovat webový server ? (Apache)

Nahoru Odpovědět 8.2.2016 18:06
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
David Hynek
Redaktor
Avatar
David Hynek:

tak zkus ještě cestu:

RewriteRule ^([a-zA-Z0-9]+)$ /index.php?id=$1 [L,QSA]
Nahoru Odpovědět 8.2.2016 18:07
Čím víc vím, tím víc věcí nevím.
Avatar
oggymotslp
Člen
Avatar
Odpovídá na David Hynek
oggymotslp:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)$ index.php?id=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9]+)/$ index.php?id=$1 [L,QSA]

V .htaccess mám toto.

Nahoru Odpovědět 8.2.2016 18:08
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
oggymotslp
Člen
Avatar
oggymotslp:

A chtěl bych se zeptat, zda tam mám to htaccess dobře. Ale nevím proč, ale nezobrazuje mi to tu tečku, která tam má být.

Nahoru Odpovědět 8.2.2016 18:11
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
David Hynek
Redaktor
Avatar
David Hynek:

tak zkus ten restart, XAMPP používám také a v .htaccess mám skoro totéž a funguje to. Soubor .htaccess musí být v hlavním adresáři

Nahoru Odpovědět 8.2.2016 18:12
Čím víc vím, tím víc věcí nevím.
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na David Hynek
David Hynek:

máš tam fakt .htaccess ta tečka je tam nutná :)

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 8.2.2016 18:13
Čím víc vím, tím víc věcí nevím.
Avatar
oggymotslp
Člen
Avatar
oggymotslp:

Když se jí tam snažím dopsat, tak to píše:

You must type a file name.

Nahoru Odpovědět 8.2.2016 18:13
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na oggymotslp
David Hynek:

zkus to ještě takhle:

¨RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)$ ?id=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9]+)/$ ?id=$1 [L,QSA]
Nahoru Odpovědět 8.2.2016 18:14
Čím víc vím, tím víc věcí nevím.
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na oggymotslp
David Hynek:

ten soubor .htaccess vytvoř třeba v PSPadu :)

Nahoru Odpovědět 8.2.2016 18:16
Čím víc vím, tím víc věcí nevím.
Avatar
oggymotslp
Člen
Avatar
Odpovídá na David Hynek
oggymotslp:

Už to funguje ! Byla tam chyba s názvem toho .htaccess. Vytvořil jsem ho přes cmd a už to funguje.

Děkuji všem co mi poradili.

Nahoru Odpovědět 8.2.2016 18:32
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
mkub
Redaktor
Avatar
Odpovídá na oggymotslp
mkub:

v httpd.conf existuje direktiva, ktora umoznuje zmenit nazov .htaccess suboru, cize da sa vytvorit htaccess subor aj bez uvodnej bodky, ale uvodna bodka hovori pre Unix systemy, ze dany subor je skryty

 
Nahoru Odpovědět  +1 8.2.2016 21:29
Avatar
Odpovídá na oggymotslp
Michal Šmahel (ceskyDJ):

Jen pro doplnění: Soubor s tečkou na začátku lze vytvořit i klasickou (standartní) cestou. Postupuješ jako při tvorbě normálního souboru, jen název bude

.nazev.

čili napíšeš tečku na obě strany. Tobě konkrétně by to pomohlo při tom přejmenování. Soubor .htaccess si musíš vytvořit v nějakém editoru (jak psal David Hynek) tak jako tak, takže to bylo spíše na doplnění.

Nahoru Odpovědět  +2 8.2.2016 22:04
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 21 zpráv z 21.