estou com sistema de cadastro de pacientes que não salva no banco de dados
07/08/2017
0
gente bom dia/noite estou tentando fazer um sistema de cadastro de pacientes em php ,porem esta acontecendo um erro não esta salvando no banco de dados e eu não encontro o erro alguém poderia me ajudar ?
obs: não tenho muita experiencia em php estou apenas começando e possivel haver um erro simples nesse codigo.
obs2: estou usando bootstrap no meu codigo porem e algo apenas na parte visual ou seja não ter a pasta do bootstrap não vai alterar em nada,apenas a parte visual
obs3: fiz o codigo orientado a objeto sei que ficou um pouco grande.
obrigado pela atenção !
att Ezequiel
index.php
<!DOCTYPE html>
<html lang="pt-br">
<link rel="stylesheet" href="css/bootstrap.css">
<head>
<meta charset="utf-8">
<title>Titulo do texto</title>
<link href="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/css/bootstrap.min" rel="stylesheet"/>
<link href="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/css/bootstrap-theme.min" rel="stylesheet"/>
</head>
<body>
<style>
body{
background-color:#A4A4A4;
}
</style>
<div class="panel panel-default">
<div class="panel-body">
<center>faça seu cadastro aqui !</center>
</div>
</div>
<div class="row">
<div class="col-md-5">
<div class="panel panel-primary">
<div class="panel-heading">
<center> Cadastro de Pacientes </center>
</div>
<div class="panel-body">
<form action="index.php" method="POST"> <!-- onde começa o comando para centralizar o form -->
<div class="row">
<div class="col-md-7">
NOME: <input type="text" name="nome" class="form-control"><br>
</div></div>
<div class="row">
<div class="col-md-5">
DOENÇA:<input type="text" name="doenca" class="form-control"><br>
</div></div>
<div class="row">
<div class="col-md-10">
EMAIL:<input type="text" name="email" class="form-control" ><br></div></div>
<div class="row">
<div class="col-md-5">
SENHA:<input type="password" name="senha" class="form-control" ><br> </div></div>
<div class="row">
<div class="col-md-5">
<!--IDADE:<input type="number" name="idade" class="form-control" ><br></div></div>-->
<p>Nascimento: <input type="date" name="nascimento" class="form-control"/> <!-- voce deverar refazer o banco de dados--> <!-- de idade passa a valer nascimento-->
<div class="row">
<div class="col-md-4">
<input type= "submit" name="gravar" value="gravar" class="btn btn-success"></div></div>
<div class="row">
<div class="col-md-4">
<INPUT type="reset" name="limpar" value="Limpar" class="btn btn-reset"></div></div>
<div class="row">
<div class="col-md-4">
<input type="button" value="Voltar" onClick="history.go(-1)" class="form-control"> </div>
</div>
</div>
</div>
</form> <!-- onde termina o comando de centralizar o form -->
<script src="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/js/bootstrap.min"/>
<!--<script src="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/js"/> --> <!-- -->
<?php
//if($_POST['ok']){
// $nome=$_POST['nome'];
include './conexao.Class.php';
include './pessoa.class.php';
include './pessoaDAO.Class.php';
$pessoa = new pessoa();
$pessoaDAO= new pessoaDAO();
if($_POST){
if($_POST['gravar']){
$nome=$_POST['nome'];
$doenca=$_POST['doenca'];
$email=$_POST['email'];
$senha=$_POST['senha'];
$nascimento=$_POST['nascimento'];
$pessoa->setnome($nome);//
$pessoa->setdoenca($doenca);
$pessoa->setemail($email);
$pessoa->setsenha($senha);
$pessoa->setnascimento($nascimento);
//$pessoa->set();
//$pessoa->set();
$resultado= $pessoaDAO->inserir($pessoa);
if($resultado == true){
echo "usuario inserido com sucesso";
}else{
echo "falha em inserir o usuario";
}
}
}
?>
</body>
</html>
conexao.Class.php
<?php
class conexao{
private $usuario= "root";
private $senha="";
private $caminho="localhost";
private $banco=" cadastro_poo"; //nome do banco a ser colocado que ira ser trocado novamente
private $con;
public function __construct() {
$this->con = mysqli_connect($this->caminho, $this->usuario, $this->senha) or die("Conexão com o banco de dados Falhou!" . mysqli_error($this->con));
mysqli_select_db($this->con, $this->banco) or die("Conexão com o banco de dados Falhou!" . mysqli_error($this->con));
}
public function getCon(){
return $this->con;
}
}
?>
pessoa.class.php
<?php
class pessoa{
private $nome;
private $doenca; //
private $email;
private $senha;
private $nascimento; // de idade passa a valer nascimento
function getnome(){
return $this->nome;
}
function setnome($nome){
$this->nome=$nome;
}
function getdoenca(){
return $this->doenca;
}
function setdoenca($doenca){
$this->doenca=$doenca;
function getemail(){
return $email;
}
function setemail($email){
$this->email=$email;
}
function getsenha(){
return $this->senha;
}
function setsenha($senha){
$this->senha=$senha;
}
function getnascimento(){ // de idade passa a valer nascimento
return $this->nascimento;
}
function setnascimento($nascimento){ // de idade passa a valer nascimento
$this->nascimento=$nascimento;
}
}
?>
pessoaDAO.class.php
<?php
class pessoaDAO{
private $conexao;
public function __construct(){
$this->conexao= new conexao();//
}
public function inserir($usuario){
// INSERT INSERTE de idade passa a valer nascimento
$sql="INSERT INTO pessoa (nome,doenca,email,senha,nascimento) VALUES('".$usuario->getnome()."','".$usuario->getdoenca()."','".$usuario->getemail()."','".$usuario->getsenha()."','".$usuario->getnascimento()."')"; //de idade passa a valer nascimento
if (mysqli_query($this->conexao->getCon(), $sql)) {
return true;
} else {
return false;
}
}
}
?>
banco de dados
Database: `cadastro_poo`
--
-- --------------------------------------------------------
--
-- Estrutura da tabela `pessoa`
--
CREATE TABLE `pessoa` (
`codigo` int(11) NOT NULL,
`nome` varchar(30) NOT NULL,
`doenca` varchar(30) NOT NULL,
`email` varchar(50) NOT NULL,
`senha` varchar(30) NOT NULL,
`nascimento` date NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Indexes for dumped tables
--
--
-- Indexes for table `pessoa`
--
ALTER TABLE `pessoa`
ADD PRIMARY KEY (`codigo`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `pessoa`
--
ALTER TABLE `pessoa`
MODIFY `codigo` int(11) NOT NULL AUTO_INCREMENT;
obs: não tenho muita experiencia em php estou apenas começando e possivel haver um erro simples nesse codigo.
obs2: estou usando bootstrap no meu codigo porem e algo apenas na parte visual ou seja não ter a pasta do bootstrap não vai alterar em nada,apenas a parte visual
obs3: fiz o codigo orientado a objeto sei que ficou um pouco grande.
obrigado pela atenção !
att Ezequiel
index.php
<!DOCTYPE html>
<html lang="pt-br">
<link rel="stylesheet" href="css/bootstrap.css">
<head>
<meta charset="utf-8">
<title>Titulo do texto</title>
<link href="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/css/bootstrap.min" rel="stylesheet"/>
<link href="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/css/bootstrap-theme.min" rel="stylesheet"/>
</head>
<body>
<style>
body{
background-color:#A4A4A4;
}
</style>
<div class="panel panel-default">
<div class="panel-body">
<center>faça seu cadastro aqui !</center>
</div>
</div>
<div class="row">
<div class="col-md-5">
<div class="panel panel-primary">
<div class="panel-heading">
<center> Cadastro de Pacientes </center>
</div>
<div class="panel-body">
<form action="index.php" method="POST"> <!-- onde começa o comando para centralizar o form -->
<div class="row">
<div class="col-md-7">
NOME: <input type="text" name="nome" class="form-control"><br>
</div></div>
<div class="row">
<div class="col-md-5">
DOENÇA:<input type="text" name="doenca" class="form-control"><br>
</div></div>
<div class="row">
<div class="col-md-10">
EMAIL:<input type="text" name="email" class="form-control" ><br></div></div>
<div class="row">
<div class="col-md-5">
SENHA:<input type="password" name="senha" class="form-control" ><br> </div></div>
<div class="row">
<div class="col-md-5">
<!--IDADE:<input type="number" name="idade" class="form-control" ><br></div></div>-->
<p>Nascimento: <input type="date" name="nascimento" class="form-control"/> <!-- voce deverar refazer o banco de dados--> <!-- de idade passa a valer nascimento-->
<div class="row">
<div class="col-md-4">
<input type= "submit" name="gravar" value="gravar" class="btn btn-success"></div></div>
<div class="row">
<div class="col-md-4">
<INPUT type="reset" name="limpar" value="Limpar" class="btn btn-reset"></div></div>
<div class="row">
<div class="col-md-4">
<input type="button" value="Voltar" onClick="history.go(-1)" class="form-control"> </div>
</div>
</div>
</div>
</form> <!-- onde termina o comando de centralizar o form -->
<script src="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/js/bootstrap.min"/>
<!--<script src="bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/js"/> --> <!-- -->
<?php
//if($_POST['ok']){
// $nome=$_POST['nome'];
include './conexao.Class.php';
include './pessoa.class.php';
include './pessoaDAO.Class.php';
$pessoa = new pessoa();
$pessoaDAO= new pessoaDAO();
if($_POST){
if($_POST['gravar']){
$nome=$_POST['nome'];
$doenca=$_POST['doenca'];
$email=$_POST['email'];
$senha=$_POST['senha'];
$nascimento=$_POST['nascimento'];
$pessoa->setnome($nome);//
$pessoa->setdoenca($doenca);
$pessoa->setemail($email);
$pessoa->setsenha($senha);
$pessoa->setnascimento($nascimento);
//$pessoa->set();
//$pessoa->set();
$resultado= $pessoaDAO->inserir($pessoa);
if($resultado == true){
echo "usuario inserido com sucesso";
}else{
echo "falha em inserir o usuario";
}
}
}
?>
</body>
</html>
conexao.Class.php
<?php
class conexao{
private $usuario= "root";
private $senha="";
private $caminho="localhost";
private $banco=" cadastro_poo"; //nome do banco a ser colocado que ira ser trocado novamente
private $con;
public function __construct() {
$this->con = mysqli_connect($this->caminho, $this->usuario, $this->senha) or die("Conexão com o banco de dados Falhou!" . mysqli_error($this->con));
mysqli_select_db($this->con, $this->banco) or die("Conexão com o banco de dados Falhou!" . mysqli_error($this->con));
}
public function getCon(){
return $this->con;
}
}
?>
pessoa.class.php
<?php
class pessoa{
private $nome;
private $doenca; //
private $email;
private $senha;
private $nascimento; // de idade passa a valer nascimento
function getnome(){
return $this->nome;
}
function setnome($nome){
$this->nome=$nome;
}
function getdoenca(){
return $this->doenca;
}
function setdoenca($doenca){
$this->doenca=$doenca;
function getemail(){
return $email;
}
function setemail($email){
$this->email=$email;
}
function getsenha(){
return $this->senha;
}
function setsenha($senha){
$this->senha=$senha;
}
function getnascimento(){ // de idade passa a valer nascimento
return $this->nascimento;
}
function setnascimento($nascimento){ // de idade passa a valer nascimento
$this->nascimento=$nascimento;
}
}
?>
pessoaDAO.class.php
<?php
class pessoaDAO{
private $conexao;
public function __construct(){
$this->conexao= new conexao();//
}
public function inserir($usuario){
// INSERT INSERTE de idade passa a valer nascimento
$sql="INSERT INTO pessoa (nome,doenca,email,senha,nascimento) VALUES('".$usuario->getnome()."','".$usuario->getdoenca()."','".$usuario->getemail()."','".$usuario->getsenha()."','".$usuario->getnascimento()."')"; //de idade passa a valer nascimento
if (mysqli_query($this->conexao->getCon(), $sql)) {
return true;
} else {
return false;
}
}
}
?>
banco de dados
Database: `cadastro_poo`
--
-- --------------------------------------------------------
--
-- Estrutura da tabela `pessoa`
--
CREATE TABLE `pessoa` (
`codigo` int(11) NOT NULL,
`nome` varchar(30) NOT NULL,
`doenca` varchar(30) NOT NULL,
`email` varchar(50) NOT NULL,
`senha` varchar(30) NOT NULL,
`nascimento` date NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Indexes for dumped tables
--
--
-- Indexes for table `pessoa`
--
ALTER TABLE `pessoa`
ADD PRIMARY KEY (`codigo`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `pessoa`
--
ALTER TABLE `pessoa`
MODIFY `codigo` int(11) NOT NULL AUTO_INCREMENT;
Ezequiel
Curtir tópico
+ 0
Responder
Post mais votado
07/08/2017
Opa Ezequiel. Beleza?
O primeiro erro é a falta de uma chave em sua classe Pessoa.
O segundo é alterar o valor do caminho do banco de dados de "localhost" para "127.0.0.1":
Sendo assim, tudo irá funcionar.
Abraços!
O primeiro erro é a falta de uma chave em sua classe Pessoa.
function setdoenca($doenca){ $this->doenca=$doenca;
O segundo é alterar o valor do caminho do banco de dados de "localhost" para "127.0.0.1":
<?php class conexao{ private $usuario= "root"; private $senha="root"; private $caminho="127.0.0.1"; private $banco="cadastro_poo"; //nome do banco a ser colocado que ira ser trocado novamente private $con; public function __construct() { $this->con = mysqli_connect($this->caminho, $this->usuario, $this->senha, $this->banco) or die("Conexão com o banco de dados Falhou!" . mysqli_error($this->con)); } public function getCon(){ return $this->con; } } ?>
Sendo assim, tudo irá funcionar.
Abraços!
Santos
Responder
Mais Posts
Clique aqui para fazer login e interagir na Comunidade :)