Ir ao conteúdo

confirmação de envio de dados com javascript


Jaquee

Posts recomendados

Postado

É o seguinte... Preciso fazer uma mensagem de confirmação de envio de dados de um formulário, pensei em algo tipo um alert em javascript. mas detalhe queria tambem que ao dar erro ele fosse mostrado da mesma maneira, ou seja num alert, até consegui fazer mas ao clicar em OK ele nao fica na mesma pagina, abre outra vazia... NÃO TENHO EXPERIENCIA.. Vou postar dois exemplos de codigo aqui se alguem puder me ajudar peço que seja claro e detalhista rs...

Esse é o Html... (cadastro_medico)

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cadastro de Médicos</title>


<script type="text/javascript" src="mascara.js"> </script>
</head>
<body>
<div id="divcorpo">
<div id="topo">
<img src="topo.jpg">
</div>
<div id="divCenter">
<form action="cadastra_medico.php" method="post" name="formcadastro">
<span>CADASTRO DE MÉDICOS</span><br/><br/>
<p>Insira os dados do médico para efetuar cadastro!<br/>
Atenção os campos que estiverem com (*) são obrigatórios!!!
</p>
<br/><br/>
Nome:
<input name="nome_med" type="text" maxlength="50" size="30"required/>
<span class="cor">*</span>
<br/><br/>
Telefone:
<input name="telefone_med" type="text" maxlength="14" onKeyPress="return mascaraTel(this,event)" size="12"required/>
<span class="cor">*</span>
<br/><br/>
Especialidade:
<input name="especialidade_med" type="text" maxlength="30" size="15"required/>
<span class="cor">*</span>
<br/><br/>
CRM:
<input name="crm_med" type="text" maxlength="50" size="12" required/>
<span class="cor">*</span>
<br/><br/>
<a href="menu.php"> Retornar ao Menu</a><br/><br/>
<input class="cadastrar" type="submit" name="cadastrar" value="Cadastrar" />
<input class="limpar" type="reset" name="limpar" value="Limpar Dados"/>

</form>
</div>
<div id="rodape">
<img src="rodape.jpg">
</div>
</div>
</body>
</html>

Esse é o Php (cadastra_medico) --> quero alerta para confirmação e se o crm ja existir!

<?php
include "validar_session.php";
include "conexao.php";

//verifica qual usuario esta conectado
$consulta = mysql_query("select * from usuario where login_usuario = '$login_usuario'");

$codigo = mysql_fetch_object($consulta);

$usuario = $codigo->cod_usuario;
//receber dados do formulario
$nome_med = $_POST['nome_med'];
$telefone_med = $_POST['telefone_med'];
$especialidade_med = $_POST['especialidade_med'];
$crm_med = $_POST['crm_med'];


$consulta=mysql_query("select * from medico where crm_med = '$crm_med'");
$linha = mysql_num_rows($consulta);
if($linha != 0){
echo "O CRM que você digitou já existe tente outro!";
exit;
}


$sql = "INSERT INTO medico (nome_med,telefone_med,especialidade_med,crm_med,cod_usuario)
VALUES('$nome_med','$telefone_med','$especialidade_med','$crm_med','$usuario')";
$consulta = mysql_query($sql); /*linha para cadastrar no banco de dados.*/
if ($consulta) { // verificação para saber se foi cadastrado
echo "Cadastrado com sucesso!!";
} else { // Caso dê erro
echo "Falha ao cadastrar.".mysql_error();
}

?>

  • Moderador
Postado

Olá,

nesse caso podes fazer em jquery e ajax para não sair da pagina e submeter o formulário.

tente desta maneira:


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cadastro de Médicos</title>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="mascara.js"> </script>
<script type="text/javascript">
$(document).ready(function() {
var enviar = $('.cadastrar');

var dados = $("#formcadastro").serialize();

enviar.click(function(e) {
e.preventDefault();
if (confirm('Quer enviar o formulário?')) {
$.ajax({
url : 'cadastra_medico.php',
type : "POST",
data : dados,
dataType : "html",
success : function(data) {
alert(data);
},
error : function(data) {
alert(data);
}
});
}
});
});

</script>
</head>
<body>
<div id="divcorpo">
<div id="topo">
<img src="topo.jpg">
</div>
<div id="divCenter">
<form action="#" method="post" id="formcadastro" name="formcadastro">
<span>CADASTRO DE MÉDICOS</span><br/><br/>
<p>Insira os dados do médico para efetuar cadastro!<br/>
Atenção os campos que estiverem com (*) são obrigatórios!!!
</p>
<br/><br/>
Nome:
<input name="nome_med" type="text" maxlength="50" size="30"required/>
<span class="cor">*</span>
<br/><br/>
Telefone:
<input name="telefone_med" type="text" maxlength="14" onKeyPress="return mascaraTel(this,event)" size="12"required/>
<span class="cor">*</span>
<br/><br/>
Especialidade:
<input name="especialidade_med" type="text" maxlength="30" size="15"required/>
<span class="cor">*</span>
<br/><br/>
CRM:
<input name="crm_med" type="text" maxlength="50" size="12" required/>
<span class="cor">*</span>
<br/><br/>
<a href="menu.php"> Retornar ao Menu</a><br/><br/>
<input class="cadastrar" type="submit" name="cadastrar" value="Cadastrar" />
<input class="limpar" type="reset" name="limpar" value="Limpar Dados"/>

</form>
</div>
<div id="rodape">
<img src="rodape.jpg">
</div>
</div>
</body>
</html>

como podes ver,

o envio é feito em ajax com jquery e a função serialize() serializa os dados e envia ao script php.

o retorno é feito em alert retornará: o echo "Cadastrado com sucesso!!"; ou o da falha caso não enviar.

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!