Ir para conteúdo

Arquivado

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

DinhoPHP

Update e Delete funcionam, mas o cadastrar (insert) não. Porque?

Recommended Posts

Olá!

isso quando não surge a seguinte mensagem de erro:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: parameter was not defined' in D:\EasyPHP-DevServer-14.1VC11\data\localweb\sites\ieadr_2013\classes\Usuarios.php:44 Stack trace: #0 D:\EasyPHP-DevServer-14.1VC11\data\localweb\sites\ieadr_2013\classes\Usuarios.php(44): PDOStatement->execute() #1 D:\EasyPHP-DevServer-14.1VC11\data\localweb\sites\ieadr_2013\alteracao_dep.php(43): Usuarios->insert() #2 {main} thrown in D:\EasyPHP-DevServer-14.1VC11\data\localweb\sites\ieadr_2013\classes\Usuarios.php on line 44

 

Segue o código:

 

Bloco do arquivo: alteracao_dep.php

 

<?php
$usuario = new Usuarios();
if(isset($_POST['cadastrar'])):
$lembrete = $_POST['lembrete'];
$dirigente = $_POST['dirigente'];
$integrantes= $_POST['integrantes'];
$festividade= $_POST['festividade'];
$usuario->setLembrete($lembrete);
$usuario->setDirigente($dirigente);
$usuario->setIntegrantes($integrantes);
$usuario->setFestividade($festividade);
# Insert
if($usuario->insert()){ (ERRO NESTA LINHA)
$msg="Inserido com sucesso!";
}/*else{
$msg="Desculpe! Já existe informações cadastradas no sistema, sendo possível apenas editá-las ou excluí-las.";
}*/
endif;
?>
Arquivo: Usuarios.php
<?php
require_once 'Crud.php';
class Usuarios extends Crud{
protected $table = 'pentecostes';
private $lembrete;
private $dirigente;
private $integrantes;
private $festividade;
public function setLembrete($lembrete){
$this->lembrete = $lembrete;
}
public function getLembrete(){
return $this->lembrete;
}
public function setDirigente($dirigente){
$this->dirigente = $dirigente;
}
public function setIntegrantes($integrantes){
$this->integrantes = $integrantes;
}
public function setFestividade($festividade){
$this->festividade = $festividade;
}
public function insert(){
$sql = "INSERT INTO $this->table (lembrete, dirigente, integrantes, festividade) VALUES (:lembrete, :dirigente, :integrantes, :festivadade)";
$stmt = DB::prepare($sql);
$stmt->bindParam(':lembrete', $this->lembrete);
$stmt->bindParam(':dirigente', $this->dirigente);
$stmt->bindParam(':integrantes', $this->integrantes);
$stmt->bindParam(':festividade', $this->festividade);
//if($stmt->rowCount() == true):
//Executa o cadastro
return $stmt->execute(); (ERRO NESTA LINHA)
/*else:
$msg="Desculpe! Já existe informações cadastradas no sistema, sendo possível apenas editá-las ou excluí-las.";*/
//endif;
}
public function update($id){
$sql = "UPDATE $this->table SET lembrete = :lembrete, dirigente = :dirigente, integrantes = :integrantes, festividade = :festividade WHERE id = :id";
$stmt = DB::prepare($sql);
$stmt->bindParam(':lembrete', $this->lembrete);
$stmt->bindParam(':dirigente', $this->dirigente);
$stmt->bindParam(':integrantes', $this->integrantes);
$stmt->bindParam(':festividade', $this->festividade);
$stmt->bindParam(':id', $id);
return $stmt->execute();
}
}

 

Agradeço desde já! Deus os abençoe.

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique essa variavel:

 

:festivadade

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fernando C. Muito obrigado por me ajudar com a minha grande e pequena falha kkkkkkkkkkk. Vejo que trabalhar com uma vista estando 100% não está sendo muito bom para mim. Deus te abençoe! :joia:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.