Diskuze: Zkrácená adresa.

PHP PHP Zkrácená adresa. American English version English version

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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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. února 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.