Hoje veremos como criar uma página simples de cadastro mas verificando antes se o registro já não existe no banco de dados – se houver, o cadastro repetido não é efetuado e é exibida uma mensagem ao usuário e também não serão permitidos cadastros em branco.
Para isso, usaremos a mesma tabela
de amigos deste post: Página de busca simples em PHP com PDO e MySQL usando um formulário.
OBS:
Este texto pressupõe que a extensão PDO já esteja instalada corretamente.
Criada a tabela do banco de dados
crie uma página em branco e cole o código a seguir:
<?php
// aqui a conexao
?>
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
<title>pesquisa e cadastro simples com
PDO</title>
</head>
<body>
<h2>Pesquisa e cadastro simples com
PDO</h2>
<form
name="form1" method="post" action="">
<label>
<input name="cxnome"
type="text" id="cxnome" value=""
size="30">
</label>
<label></label>
<label>
<input type="submit" name="pesquisar"
value="Pesquisar">
</label>
<label>
<input
type="reset" name="Submit2" value="Limpar">
</label>
</form>
<?php
if(isset($_POST['pesquisar'])&& empty($_POST["cxnome"]))
{
echo "preencha o campo de pesquisa";
}
if(isset($_POST['pesquisar'])&&!empty($_POST["cxnome"]))
{
$nome=$_POST['cxnome'];
$nome=$_POST['cxnome'];
$stmt =
$con->prepare("select * from amigos where nome like :letra");
$stmt->bindValue(':letra',
'%'.$nome.'%', PDO::PARAM_STR);
$stmt->execute();
$resultados = $stmt->rowCount();
if($resultados>=1){
echo "já existe usuario cadstrado com esse
nome";
}
else
{
$stmt2 =
$con->prepare("insert into amigos (nome) values(:letra)");
$stmt2->bindValue(':letra',
$nome, PDO::PARAM_STR);
$stmt2->execute();
}
if($stmt2){
echo "cadastro efetuado";}
}
?>
</body>
</html>
Salve e teste; a pagina já deverá
estar funcionando corretamente.