Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde galera!
Acabo de implantar um sistema de slug e URL amigável, mas me deparei com um problema:
Eu gravo um slug com site.com/artigo/titulo-de-teste
Se daqui um mês eu gravar outro slug com o mesmo titulo, irá ficar idêntico:
site.com/artigo/titulo-de-teste
Gostaria de saber como eu faço pra consultar se o slug já existe no banco de dados, e caso exista incremente +1, ficando:
site.com/artigo/titulo-de-teste1
site.com/artigo/titulo-de-teste2
site.com/artigo/titulo-de-teste3
Tentei de diversas formas utilizando SELECT e nada..
Também li sobre o fato de criar o campo SLUG como UNIQUE? Tentei de diversas formas e não consegui, pois não sei como deve ser o tipo do campo (VARCHAR, TEXT, etc..)
Pra transformar o titulo em SLUG estou usando uma função, então fica assim antes do INSERT no banco de dados:
$slug = $_POST["slug"];
$slug = slug($titulo, '-');
$sqlinsert = "INSERT INTO tabela (slug) VALUES ('$slug')";
$insere = mysqli_query($conecta,$sqlinsert) or die (mysqli_error($conecta));
Está gravando normalmente, mas ocorre a duplicação de SLUG..
Código da pagina de insert completa: