andrebian
(usa Fedora)
Enviado em 08/03/2013 - 01:41h
rogeriossilva1 há alguns passos para seguir até o resultado esperado
1 - mod_rewrite ativo no seu php
2 - arquivo .htaccess criado e seu conteúdo informando que utilizará o mod_rewrite e sua regra (ex: Todas as requisições vindas via url serão encaminhadas à nome_do_arquivo.php: algo +- assim
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?cod=$1
</IfModule>
3 - não sei se está utilizando algum framework (o que eu recomendo fortemente) mas vou encarar como se estivesse criando tudo na mão. Basicamente criando na mão você deve tratar toda a url de seu sistema. Encaramos que o comprador esteja em
http://meusite.com/carrinho/camiseta/15, você deverá dar um explode em toda essa url utilizando como caracter divisório a barra (/). Feito isso voce vai ter algo assim:
$url = $_SESSION['REQUEST_URI'];
$url = explode('/',$url);
// conteudo de $url array('0' => '', '1' => 'meusite.com.br', '2' => 'carrinho', '3' => 'camiseta', '4' => '15');
Após isto normalmente quando não é utilizado framework deve ser realizados os includes dos arquivos necessários (sugiro para este caso a partir do trecho da url 'carrinho' voce incluir o arquivo php que tratará o carrinho (ex: if( $url[2] == 'carrinho' ) { include_once 'nome-do-arquivo.php'; })). O restante normalmente encaramos como parâmetros, neste caso 'camiseta' e '15' que também deverão ser tratados ($url[3] e $url[4] respectivamente).
Seguindo esses passos torna-se a possibilidade de estando tudo correto que seu site esteja com urls amigaveis. Detalhe que aqui expliquei somente a parte do carrinho, o mesmo deve ser feito com todas as páginas do site.
Com relação à sessão não há mistérios, ao adicionar um novo item basta
$_SESSION['carrinho']['itens'][] = array('nome' => 'nome-do-produto', 'valor' => '123');
// o [] após itens serve para o auto incremento, iniciando em zero (['itens'][0].... o próximo será // ['itens'][1] e assim por diante)
espero ter contribuido