Jump to content

[Resolvido] URL para notícia


aesp

Recommended Posts

Boa noite,

Queria colocar a seguinte questão.

Tenho um website que possui uma pagina inicial com algumas noticias e um botão para aceder aos detalhes da notícia. O que eu gostaria como é que posso fazer com que o url fique do estilo "http://localhost/noticias/titulo-da-noticia", e não que fique por exemplo "http://localhost/noticias/index.php?id=X" por exemplo.

Obrigado. 🙂

Edited by aesp
Link to comment
Share on other sites

ja agora, nao sera mais provavel haver alguma colisao entre nomes?

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

ja agora, nao sera mais provavel haver alguma colisao entre nomes?

a probabilidade de colisão entre as duas situações é exactamente igual

- se for por id é zero : id são diferentes por definição

- se for por nome : os nomes são diferentes por imposição

  • Vote 1
IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

a probabilidade de colisão entre as duas situações é exactamente igual

Discordo, quando se fala em ID, falase em uma identificacao unica, cada noticia tem o seu ID, mas uma noticia pode ter nomes iguais.

Por exemplo:

A pplware tem uma "rubrica" de todas as semanas chamada "Porque hoje e' Sexta". Se usasse-mos o titulo da noticia como link directo, haveria colisoes, mas se formos a ver o url e' ligueiramente diferente, no final do nome tem um id:

http://pplware.sapo.pt/humor/e-porque-hoje-e-sexta-130/

http://pplware.sapo.pt/humor/e-porque-hoje-e-sexta%E2%80%A6-15/

http://pplware.sapo.pt/humor/e-porque-hoje-e-sexta-226/

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

Discordo, quando se fala em ID, falase em uma identificacao unica, cada noticia tem o seu ID, mas uma noticia pode ter nomes iguais.

Por exemplo:

A pplware tem uma "rubrica" de todas as semanas chamada "Porque hoje e' Sexta". Se usasse-mos o titulo da noticia como link directo, haveria colisoes, mas se formos a ver o url e' ligueiramente diferente, no final do nome tem um id:

http://pplware.sapo....je-e-sexta-130/

http://pplware.sapo....je-e-sexta…-15/

http://pplware.sapo....je-e-sexta-226/

les-te o resto do post ?

IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

les-te o resto do post ?

li so' que foi por alto.

- se for por id é zero : id são diferentes por definição

- se for por nome : os nomes são diferentes por imposição

Por nomes e' um bocado chato termos que ter que "obrigar" o user a meter noticias com nomes diferentes(a menos que ele de um "alias" unico)

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

e é exactamente isso que se faz ...

ja' te faz automaticamente?

Admito que nao vi, nem pesquisei nada sobre isto porque nao tive tempo, mas acho que devo de dar uma vista de olhos

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

Outra alternativa é colocar um par <id,slug> no URL, por exemplo:

http://example.com/123-noticias-da-semana

http://example.com/456-noticias-da-semana

Como um dos elementos é único (ID), o endereço fica sempre único. O Wordpress parece que acrescenta um número sequencial no final do URL, não o ID, que também garante a unicidade.

  • Vote 1

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Desde já obrigado pela ajuda de todos.

Vou deixar aqui o método que utilizei para abordar a situação.

No ficheiro ".htaccess"

Escrevi "RewriteRule ^noticias/(.+)/([0-9]+)$ noticias.php?id=$2", desta forma é apresentado o título no URL mais o seu ID, desta forma não existe a possibilidade de duplicação de nomes.

Depois no ficheiro de PHP foi só receber o valor da variável e efectuar a Query.

Abraço. 🙂

Edit: Já agora, tive um problema ao carregar os estilos da página ao utilizar o Rewrite, tive que apenas acrescentar um linha ao ficheiro principal.

<html>
<head>

<html>
<head>
<base href="http://localhost/" />
</head>
<body>
</body>
</html>
Edited by aesp
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.