gmps 0 Denunciar post Postado Outubro 19, 2004 galera tenho esse code: <?include ("../conexao_db.php");//Extrai variáveisextract($_POST);extract($_GET);if ( isset($action) ) { mysql_query ("INSERT INTO sites (id,titulo,1,2,3,4) values ('','$titulo','$1','$2','$3','$4')"); echo "<center>Inclusão efetuada com sucesso!</center>"; echo "<center><a href='main.php?home=sites'><font class='title_red'>Clique aqui</font></a> para voltar.</center>"; }else {?>como que eu faço para nao incluir se ja existir um titulo la? ex: vou inserir o titulo: Alegria, ai no bd ja tem um titulo como Alegria, dai nao cadastra no bd..como faço? Compartilhar este post Link para o post Compartilhar em outros sites
Cerrito 0 Denunciar post Postado Outubro 19, 2004 PHP [/tr][tr]<?php$verifica = "SELECT * FROM sites WHERE titulo='$titulo'"; $sql = mysql_query($verifica); $numero = mysql_num_rows($sql); if($numero < 0) { mysql_query ("INSERT INTO sites (id,titulo,1,2,3,4) values ('','$titulo','$1','$2','$3','$4')"); echo "<center>Inclusão efetuada com sucesso!</center>"; echo "<center><a href='main.php?home=sites'><font class='title_red'>Clique aqui</font></a> para voltar.</center>"; } else { echo "Titulo já existente"; } ?> [/tr] bom você pode fazer algo assim... a função mysql_num_rows retorna o numero de ocorrencias de um consulta sql, logo se o valor retornado por ela fpo maior que um é porque já existe espero que lhe ajude... Marcio Compartilhar este post Link para o post Compartilhar em outros sites
LeoLoko 0 Denunciar post Postado Outubro 19, 2004 Cerrito, num faltou um WHERE no select? Compartilhar este post Link para o post Compartilhar em outros sites
Cerrito 0 Denunciar post Postado Outubro 19, 2004 kara é verdade, valeu, estou corrigindo...obrigado!!!Marcio Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Outubro 19, 2004 Cerrito só uma dica nao use mysql_num_rows use mysql_result e count pq se você tivesse trabalhando com um banco grande e varios usuarios ao mesmo tempo ira deixa o trafego do banco mais lento pq o mysql_num_rows ira retorna todos registros numa busca ja o mysql_result ira retorna apenas 1 exemplo: $titulo = $_POST["titulo"]; $re = mysql_query("select count(*) as total from tabela where titulo = '$titulo'"); $total = mysql_result($re, 0, "total"); if ($total == 0) { mysql_query("INSERT INTO tabela VALUES ('', '$titulo')"); } else{ echo"Titulo ja Cadastrado"; } Compartilhar este post Link para o post Compartilhar em outros sites