Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

vonzuben

Atualizar vários sites

Recommended Posts

Criei um site: www.meusite.com.br


coloquei echo nos dados que serão trocado pelo dados dos úsuarios cadastro no admin ( fiz assim para não precisar fazer um site para cada usuario e não ter trabalho de atualizar, assim atualizo o site um só para todos .)

Dados do usuário no admin:

 

Ex:

 

Usuario: fumino
Nome: Fulano
Skype: meuskype
Fan Page: www.facebook.com/minhafan
Link de cadastro: www.sitedeterceiro.com.br/cadastrar

no site ficou assim entao:

<?php echo $usuario; ?>
<?php echo $nome; ?>
<?php echo $skype; ?>
<?php echo $link_fanpage; ?>
<?php echo $link_cadastro; ?>

Quando o cara digita www.meusite.com.br/fumino troca os dados

até aqui tudo bem

só que o site tem outro link na pagina (Como Funciona ) com o link ex: www.meusite.com.br/como-funciona e nessa página tem um link com um botao de cadastrar. onde que coloquei

<?php echo $link_cadastro; ?>

só que quando o usuario clicar no link ( Como Funciona ) que será o www.meusite.com.br/como-funciona não vai baixar os dados do usuario fumino, pois o link não será mais assim www.meusite.com.br/fumino.

www.meusite.com.br/como-funciona ( assim puxaria os dados principal do site registrado no banco de dados )
www.meusite.com.br/fumino/como-funciona ( assim até puxaria, mas teria que fazer uma pasta para cada usuario ) só que ai para atualizar iria dar um trabalho, pois teria que atualiza cada um.

Gostaria de receber várias opiniões de vocês. ( metodo simples, facil, o certo seria etc.. )

Obrigado desde já !


Compartilhar este post


Link para o post
Compartilhar em outros sites

vonzuben, que tal se a gente utilizar o mínimo da inteligência? Posta o htaccess, isso que você quer se resolve com url amigável, imagino que você tenha feito o famoso ctrl+c/ctrl+v e ainda não saiba realmente como funciona... então sem o teu htaccess fica complicado ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não tem nada de ctrl+c/ctrl+v

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?user=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1&pagina=$2 [NC]
RewriteRule ^([^/]+)/([^/\.]+)/([^/\.]+)/?$ index.php?pagina=$1&id=$2&code=$3 [L,QSA]

ErrorDocument 404 http://www.meusite.com.br/404

Options -Indexes

Compartilhar este post


Link para o post
Compartilhar em outros sites

vonzuben, que tal se a gente utilizar o mínimo da inteligência? Posta o htaccess, isso que você quer se resolve com url amigável, imagino que você tenha feito o famoso ctrl+c/ctrl+v e ainda não saiba realmente como funciona... então sem o teu htaccess fica complicado ajudar.

 

:clap:

 

 

não tem nada de ctrl+c/ctrl+v

 

 



RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?user=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1&pagina=$2 [NC]
RewriteRule ^([^/]+)/([^/\.]+)/([^/\.]+)/?$ index.php?pagina=$1&id=$2&code=$3 [L,QSA]

ErrorDocument 404 http://www.meusite.com.br/404

Options -Indexes

 

 

:o

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

não tem nada de ctrl+c/ctrl+v

 

 

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?user=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1&pagina=$2 [NC]
RewriteRule ^([^/]+)/([^/\.]+)/([^/\.]+)/?$ index.php?pagina=$1&id=$2&code=$3 [L,QSA]

ErrorDocument 404 http://www.meusite.com.br/404

Options -Indexes

Pode até não ter nada de copiar/colar, mas se você entendesse para que serve uma ER sabia que isso:


RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?user=$1 [NC]
RewriteRule ^([a-z0-9-]+)/?$ index.php?pagina=$1&pagina=$2 [NC]

Beira a insanidade...

 

No caso, a nova regra que você precisa para casar com a situação que você passou é:


RewriteRule ^como-funciona\/([a-z0-9-]+)/?$ index.php?NOME_DA_VARIAVEL_QUE_VC_QUER_NO_PHP=$1 [NC]

Como isto você poderá usar:

www.site.com.br/como-funciona/fumico

 

Caso você prefira:

www.site.com.br/fumico/como-funciona

Basta inverter os dois itens da ER

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas o forum é para isso mesmo, pois caso se alguem tiver com problema, postamos para que a pessoa com grau de conhecimento maior, no caso htaccess, poderá explicar o ocorrido.

Agora sobre inteligencia, uma simples aprendizagem que qualquer pode fazer, pois basta estudo e por isso que estamos aqui, para aprender e estudar.

falow

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eserra os dados do usuario está sendo puxado através do GET

pois veja bem, quando digitado www.site.com.br/fumino ela vai puxar os dados do usuario, mas quando clicar em www.site.com.br/como-funciona não estará puxando, pois o link já é outro e não estaria pegando na url.

veja funcionando http://www.grufin.com.br/fumino

pode ver que baixa os dados no lado esquerdo, skype e nos icones das redes sociais, sendo que na hora que clicasse
no link como-funciona, gostaria que a url ficasse assim www.grufin.com.br/fumino/como-funciona

acho que vou criar uma pasta para cada usuario, pois o que você passou não solucionou

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente, o nome técnico disso que você quer se chama "URL Routing", se você pesquisar no Google encontrará vários tutoriais, dicas e boas práticas na implementação.

 

Eu nunca entendi o porque de se usar mais de uma regra de reescrita de URL. Isso só serve para para gerar problemas.

 

Eu sempre coloco uma única regra e pronto:

 

RewriteRule . index.php [L]

 

Todas as requisições são direcionadas para o arquivo index.php. Agora você tem muito mais recursos para controlar a aparência de suas URLs, não precisa ficar limitado ao HTACCESS

 

Você pode estar querendo saber agora como identificar os argumentos passados nessa URL. Basta usar o cabeçalho REQUEST_URI. Vai um exemplo simples:

 <?php$args = explode('/', $_SERVER['REQUEST_URI']); if (empty($args)) {    // Nenhum argumento foi dado -> página inicial    echo "homepage";    exit;} // Detecta se o primeiro argumento é uma página$paginas = array(              "como-funciona",              "sobre-nos",              // etc...            ); $pagina = array_search($args[1], $paginas);if ($pagina !== false) {    echo "Página: " . $paginas[$pagina];} else {    // Não é uma página ->    // consultar no db se é um nome de usuário    // se nada encontrar -> 404 Not Found    // Se for um usuario e houver um segundo $arg    // -> verifique se eh uma pagina e se for    // chame a pagina para este usuario}

 

Acho que deu pra entender, né?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois veja bem, quando digitado www.site.com.br/fumino ela vai puxar os dados do usuario, mas quando clicar em www.site.com.br/como-funciona não estará puxando, pois o link já é outro e não estaria pegando na url.

No exemplo eu passei o seguinte:

Como isto você poderá usar:

www.site.com.br/como-funciona/fumico

 

Caso você prefira:

www.site.com.br/fumico/como-funciona

 

Acredito que e não preciso explicar que a URL que você testou é diferente da que eu passei... não há milagre, o parametro "fumico" sempre via ter que existir na URL, os links sempre terão que ter ele para você resgatar e usar no sistema.

 

 

Eu nunca entendi o porque de se usar mais de uma regra de reescrita de URL. Isso só serve para para gerar problemas.

Quando você tiver um pouco mais de experiência você vai entender...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.