[ ksrele @ 25.04.2010. 14:09 ] @
Drug i ja smo pravili sajt (narucen) i jedan osnovni zahtev je bio to da se u adresi sajta na pojavljuju linkovi (?nesto=nnn&blablabla) vec da uvek stoji samo adresa sajta. Ne znam zasto je ovo bilo sporno ali OK, tako smo i napravili. Preko smarty-ja, za svaki link je stvarana mala formica koja se na klik tog linka prosledjivala pomocu POST-a. I mogu vam reci da mi se svidelo to sto je adress bar bio rasterecen gluposti.
Ali, sada se javio priblem sa kretanjem po sajtu, tacnije Back i Forward preko browsera. Browser uvek izbaci poruku da je na prethodnoj stranici bilo slanja nekih POST parametara i da li zelim da ih ponovo posaljem. Ovo bas iritira, da li se moze nekako izbeci ovo ponasanje? Sa nekim JS-om mozda?

Saznao sam da je moguce napraviti da URL izgleda lepse iako se promenjive salju GET metodom tako sto se odvajaju sa "/" ali em sto sada ne mogu da pronadjem gde sam to nasao (primer i uputstvo), em sto mi se cini da ce to zahtevati preglomazne promene u kodu jer ako ne promenim kod opet nisam mnogo ulepsao situaciju jer ce i dalje u adresi da pise "sajt.com/cat1/2/cat2/3" umesto "sajt.com/index.php?cat1=2&cat2=3"...

Sta mi preporucujete?
[ Goran Rakić @ 25.04.2010. 14:28 ] @
Ne samo da ne radi navigacija iz preglednika nego je i nemoguće objaviti link ka nekoj stranici sajta ili dodati stranu u obeleživače. Dodatno kako Google ne prati HTTP POST zahteve ni jedna stranica osim prve neće biti indeksirana i vidljiva sa pretraživača.

Specifikacija jasno kaže za šta se koristi POST, za šta GET. Pridržavaj se tih preporuka.

Ono što tvoj klijent verovatno želi jesu takozvani "seo linkovi", a ne "ulepšanu" situaciju.
[ ksrele @ 25.04.2010. 14:40 ] @
Da, znam sta hoces da kazes... pa nista.
Nego, jer mi moze neko pomoci, gde da nadjem uputstvo kako da napravim SEO linkove? Dakle onaj "lepsi" GET metod. Pa makar tako da stoji ako ne moze onako kako je prvobitno bilo planirano.
[ Goran Rakić @ 25.04.2010. 15:01 ] @
http://lmgtfy.com/?q=SEO+Friendly+links+in+PHP
[ Man-Wolf @ 25.04.2010. 15:03 ] @
Code (php):

$_SERVER['REQUEST_URI']
 


^^ Sadrzi URI koji je zahtevan i to je jedan nacin na koji mozes da napravis te seo LINKOVE. Konkretno, ako odes na stranicu:

www.example.com/friendly/links

REQ. URI ti sadrzi "friendly/links". I onda samo iskoristis npr. explode() il nesto slicno, da izvuces sta ti treba.

Link: http://php.net/manual/en/reserved.variables.server.php

Drugi nacin je preko mod rewrite-a, o kome mozes naci dosta po forumu (koristi pretragu), a mozes i da konsultujes google, hint: Google: "mod_rewrite".

P.S. Mozda postoji i jos neki nacin, ali nisam upoznat sa istim :-D

Pozz

EDIT: Nisam primetio Goranovu poruku (citaj - pisali smo u isto vreme ...) ;)
[ ksrele @ 25.04.2010. 15:08 ] @
OK, hvala vam oboma.
Videcu sta cu uraditi. Verovatno cu ostaviti obican GET metod.
[ ksrele @ 25.04.2010. 19:21 ] @
Da li vam je problem da mi objasnite jos jednu stvar, cisto da ne lutam mnogo.
Znaci aktivirao sam mod_rewrite, nasao uputstvo sta i kako napisati u .htaccess file i radi sa ovim:
Code:

RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php?var1=$1&var2=$2 [L]

A u php-u:
Code:

<?php
echo "var1=".$_GET['var1'].", var2=".$_GET['var2'];
?>

Radi OK kada ukucam recimo (kod mene u localu, "cool" je naziv direktorijuma u kome je .htaccess file i index.php) "http://localhost/cool/varijable1/varijablelele2"
na stranici dobijem ispis:
Citat:

var1=varijable1, var2=varijablelele2

Ali nece da radi sa samo jednom promenjivom... kako da mu kazem da mu je druga promenjiva (ili vise njih) opcionalna?
[ Nikola Poša @ 25.04.2010. 19:36 ] @
Možda ovakav neki pattern: ^([a-zA-Z0-9_-]+)(?:/([a-zA-Z0-9_-]+))?$.
[ ksrele @ 25.04.2010. 20:01 ] @
radi tako, skontao sam i za vise. Hvala.