Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal sou novo em PHP e estou perdendo sono com este probleminha onde a conexão está tudo certo e não mostra erro mas também não salva os dados no BD. olha os códigos nas imagens. Alguma ajuda seria de tamanha importância para mim. O Form (index.php): https://prnt.sc/p3s78h A Conexão (conexao.php): https://prnt.sc/p3s7t9 O arquivos (processa.php): https://prnt.sc/p3s8ld O banco MySQL: https://prnt.sc/p3s99s Desculpem não postar o código por aqui é que com os prints era mais fácil. Obrigado! ################## FORM #################################
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html. charset=utf-8" />
<title>Cadastro de Pacientes - Jawa Informática</title>
<link rel="stylesheet" href="css/estilo.css" />
</head> <body> <div class="container"> <nav> <ul class="menu"> <a href="index.php"><li>Cadastro</li></a> <a href="consultas.php"><li>Consultar Cadastro</li></a> </ul> </nav> <section> <h1>Cadastro de Pacientes e Eaxames</h1> <hr /><br /> <form method="post" action="processa.php"> Nome<br /> <input type="text" name="nome" class="campo" maxlength="40" required autofocus /><br /> Data de Nascimento<br /> <input type="nascimento" name="nascimento" class="campo" maxlength="10" required /><br /> Médico Solicitante<br /> <input type="text" name="medico" class="campo" maxlength="40" required /><br /> Plano de Saúde<br /> <input type="text" name="plano" class="campo" maxlength="30" required /><br /> <br /> <input type="submit" value="Salvar" class="btn" /> <input type="reset"value="Limpar" class="btn"/> </form> </section> </div>
</body>
</html> ##################### CONEXAO #############################<?php $hostname = "localhost". $user = "root". $password = "". $database = "banco_exames". $conexao = mysqli_connect($hostname,$user,$password,$database). if(!$conexao){ print "Falha na conexão com o Banco de Dados!". }?> ####################### PROCESSA #####################################<?php include_once("conexao.php"). / ACAPTURAR OS DADOS DO CADASTRO DO PACIENTE E EXAMES /$nome = $_POST['nome']. $nascimento = $_POST['nascimento']. $medico = $_POST['medico']. $plano = $_POST['plano']. /* ATÉ AQUI É SOMENTE OS DADOS DO CADASTRO DO PACIENTE - FALTA OS #-> CHEKBOX DOS "EXAMES" */ $sql = "INSERT INTO exames('nome','nascimento','medico','plano')VALUES(default,'$nome','$nascimento','$medico','$plano')" or die(mysql_error()). /* VARIÁVEL PARA INSERIR DADOS NOS CAMPOS DA TABLEA DE EXAMES (isso está na metade da vídeo-aula #2) */
$salvar = mysqli_query($conexao,$sql). mysqli_close($conexao).?> ########################## BANCO - TABELA EXAMES ############################CREATE TABLE `exames` ( `registro` int NOT NULL, `nome` varchar(40) NOT NULL, `nascimento` date NOT NULL, `medico` varchar(40) NOT NULL, `plano` varchar(30) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8. Lembrando que no banco, o campo "nascimento" é do tipo "date" e lá no form este campo eu coloquei como <input type="nascimento" name="nascimento" class="campo" maxlength="10" required /> SERIA ESSA A QUESTÃO DO input type? Teria que colocar como "date"?
Eu sei que seria melhor estudar PDO devido a questão de segurança mas como estou aprendendo queria começar por aqui.Fica um pouco difícil ajudá-lo através de códigos em imagens.
Por favor coloque o código através da opção code disponível no fórum.
>
Citar
Lembrando que no banco, o campo "nascimento" é do tipo "date" e lá no form este campo eu coloquei como <input type="nascimento" name="nascimento" class="campo" maxlength="10" required /> SERIA ESSA A QUESTÃO DO input type? Teria que colocar como "date"?
Não existe <input type="nascimento">
Troque o por type="date">>
1 hora atrás, Megao disse:
Fica um pouco difícil ajudá-lo através de códigos em imagens.
Por favor coloque o código através da opção code disponível no fórum.
Não existe <input type="nascimento">
Troque o por type="date">
OPA, eu pensei nisso em colocar do tipo date. Vou fazer aqui e te digo
OPA, testei aqui e não salvou o registro na base de dados. Resolveu uma questão que futuramente eu iria querer neste campo "nascimento". Olha a img: [https://prnt.sc/p3xymf](https://prnt.sc/p3xymf)/profile/213562-jawa-inform%C3%A1tica/?do=hovercard" data-mentionid="213562" href="/profile/213562-jawa-inform%C3%A1tica/" rel="">@JAWA-Informática
Segue abaixo algumas modificações no teu código funcionando.
CREATE TABLE `exames` (
`registro` INT NOT NULL AUTO_INCREMENT,
`nome` VARCHAR(40) NOT NULL,
`nascimento` DATETIME NOT NULL,
`medico` VARCHAR(40) NOT NULL,
`plano` VARCHAR(30) NOT NULL,
PRIMARY KEY (`registro`));
<?php
include_once("conexao.php");
/ ACAPTURAR OS DADOS DO CADASTRO DO PACIENTE E EXAMES /
$nome = $_POST['nome'];
$nascimento = $_POST['nascimento'];
$medico = $_POST['medico'];
$plano = $_POST['plano']; /* ATÉ AQUI É SOMENTE OS DADOS DO CADASTRO DO PACIENTE - FALTA OS #-> CHEKBOX DOS "EXAMES" */
$sql = "INSERT INTO exames VALUES ";
$sql .= htmlentities ("(null, '$nome', '$nascimento', '$medico', '$plano')");
mysqli_query($strcon,$sql) or die("ERRO");
mysqli_close($strcon);
echo 'O exame foi cadastrado com sucesso!';
?>
<?php
$Servidor = 'localhost';
$nomeBanco = 'banco_exames';
$Usuario = 'root';
$Senha = '';
$strcon = mysqli_connect($Servidor, $Usuario, $Senha, $nomeBanco);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro de Pacientes - Jawa Informática</title>
<link rel="stylesheet" href="css/estilo.css" />
</head>
<body>
<div class="container">
<nav>
<ul class="menu">
<a href="index.php"><li>Cadastro</li></a>
<a href="consultas.php"><li>Consultar Cadastro</li></a>
</ul>
</nav>
<section>
<h1>Cadastro de Pacientes e Eaxames</h1>
<hr /><br />
<form method="post" action="processa.php">
Nome<br />
<input type="text" name="nome" class="campo" maxlength="40" required autofocus /><br />
Data de Nascimento<br />
<input type="date" name="nascimento" class="campo" maxlength="10" required /><br />
Médico Solicitante<br />
<input type="text" name="medico" class="campo" maxlength="40" required /><br />
Plano de Saúde<br />
<input type="text" name="plano" class="campo" maxlength="30" required /><br />
<br />
<input type="submit" value="Salvar" class="btn" />
<input type="reset"value="Limpar" class="btn"/>
</form>
</section>
</div>
</body>
</html>>
8 horas atrás, JAWA-Informática disse:
CARAMBA rsrsrsrsrs p**** Megao valeu mesmo meu caro! Obrigado pela força em ajudar este humilde aprendiz rsrsrs OBRIGADO AMIGO!
Mas me diz, o que estava acontecendo de errado?
INSERT INTO exames (registro, nome, nascimento, medico, plano) // este era o erro (já corrigido)
>
8 horas atrás, JAWA-Informática disse:
htmlentities
Isso serve para filtrar os caracteres não aceitos pelo mysql e então salvar no banco de dados.
Exemplo: digito no input **<oi>**
Vai salvar no banco de dados **<oi>**
>
8 horas atrás, JAWA-Informática disse:
E ESTE "."
Sem o ponto teria que ficar assim:
$sql = "INSERT INTO exames VALUES (null, '$nome', '$nascimento', '$medico', '$plano')";
mysqli_query($strcon,$sql) or die("ERRO");
mysqli_close($strcon);
Entendeu?
>
9 horas atrás, JAWA-Informática disse:
Pessoal sou novo em PHP e estou perdendo sono com este probleminha onde a conexão está tudo certo e não mostra erro mas também não salva os dados no BD.
olha os códigos nas imagens. Alguma ajuda seria de tamanha importância para mim.
O Form (index.php): https://prnt.sc/p3s78h
A Conexão (conexao.php): https://prnt.sc/p3s7t9
O arquivos (processa.php): https://prnt.sc/p3s8ld
O banco MySQL: https://prnt.sc/p3s99s
Desculpem não postar o código por aqui é que com os prints era mais fácil. Obrigado!
CARAMBA rsrsrsrsrs p**** Megao valeu mesmo meu caro! Obrigado pela força em ajudar este humilde aprendiz rsrsrs OBRIGADO AMIGO!
Mas me diz, o que estava acontecendo de errado? Esta variável de conexão que você implementou no código? E ESTE "." na variavel $sql .= htmlentities ("... ???