
Problém s .htaccess
Dobrý den,
mám menší problémy s .htaccess. Dělám si teď stránky a chtěl bych si tam vytvořit menší redakční systém. Problém je, že stránky dělám dynamicky a proto nutně potřebuji, aby cesta k článkům začínala index.php?class=neco. Problém je, že mi níže zveřejněný .htaccess nefunguje. Předpokládám, že je to primitivní chyba, ale Rewrite vůbec nerozumím, proto se musím obracet na vás.
Nevěděl by někdo prosím, v čem je problém?
Předem všem moc děkuji
Htaccess nema nic spolocne s index.php?class=neco, to je snad len variable pre PHP script. Htaccess upravuje pristup k suborom. Jaky mas konkretne problem (co to robi resp. nerobi, jaku chybu to hlasi, a kde mas subory tych clankov a preco ich mas kdesi v inej zlozke a nie v databaze?). Z jakeho dovodu mas potrebu robit nieco s htaccess?
Problém je ten, že to nerobí právě nic. Mám php soubor, který tahá z DB "novinky" články. A soubor .htaccess mám uložen ve složce root stejně jako níže zveřejněný kód
htaccess ani robit nic nebude, htaccess upravuje pristup k suborom na disku. Ty na ziadne subory nepristupujes.
Co sa tyka tvojho php kodu tak v URL musis napisat index.php?id_clanku=neco;url_clanku=neco resp. urobit si na to formular. A v databaze musis mat zaznamy s danym URL a ID
Přestávám tomu rozumět, proč tedy, když místo
zadám třeba
Tak to funguje??
OMG to si cez htacces preformatovavas pristup na index.php, co to je za nezmysel? Sak si zmen to php, a nerob nic s htaccess, zrus to RewriteRule uplne, nepotrebujes to.
P.S. pochop princip ze cez htaccess si mozes zmenit subor an nieco ine, t.j. ak niekto bude chciet pristupovat na tvoj server na subor /neco.txt (a ten subor vobec na serveri neexistuje) tak to zmenis na /necoine.php?neco=necoine. To sa da (to je ten druhy pripad).
Ale nemozes tym formatovat parametre ked pristupujes na stejny subor (.php), to je uplney nezmysel. Zmen to PHP ked chces ine parametre.
Co presne chces dosiahnut? (co chces zmenit na co a preco?)
Este som ti na to pozrel cez google, ked ta spravne chapem chces zmenit
index.php?class=clanek=123 na clanek.php?id_clanku=123 ?
V tom pripade kedze chces scanovat aj premennu tak asi bude treba pouzit RewriteCond ptz tusim ze RewriteRule scanuje len URL a nie premenne (v tvojom pripade URL je len index.php, zbytok su premenne). Ale toto RewriteCond uz nedrzim v hlave ptz to je uz podla mna sialenstvo, inac studovat mozes napr. tu htaccess2.php pekna stranka.
Malo by fungovat nieco take (nezarucujem netestoval som to)
pripadne vyhod to ^ zo zaciatku a $ z konca, ked chces scanovat len ten konkretny string a nic viac k nemu. Ked chces pridat na koniec aj pripadne dalsie premenne tak do parametrov pridas tusim QSA, t.j. [L,QSA]
Vychadzal som z prikladu na tom webe, konkretne
Úvodní informace o RewriteCond a RewriteRule také např. zde :
mod-rewrite.html
Ale ještě trošku nerozumím spojení dvou dotazů ve zdrojovém kódu ( potažmo tabulce novinky):
Článek by asi měl být jednoznačně určen svým id ( nebo teda url, což by se mi osobně nelíbilo ) . Pak je předávání obou pomocí GET zbytečné. A ovšem také jeden z dotazů.
Anebo je možné přiřadit libovolnému id libovolné URL ? To si neumím představit.
Podobnou věc jsem ještě nedělal a také nedovedu teď z fleku navrhnout řešení bez .htaccess. Což by mě zajímalo.