Arquivado
Este tópico foi arquivado e está fechado para novas respostas.
(ajuda) ht exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens'
Por
manogaucho, em PHP
Recommended Posts
-
Conteúdo Similar
-
Por Fábio BN
Oi Pessoal, estou tentando fazer um Select usando PDO e sempre dá um erro:
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /home/dominio/public_html/pagina_codigox.php on line 25
A linha 25 é:
$var_icone->execute();
Código:
$codigo_comprador = 123456; $var_icone=$pdo->prepare("select * from loja_temporaria where codigo_user=:$codigo_comprador order by cod_temp desc"); $var_icone->bindValue(":codigo_user",$codigo_comprador); $var_icone->execute(); Fiquei cerca de 3 horas tentando resolver isso e não consegui. Sempre da erro no ( $var_icone->execute(); )
Se alguém puder ajudar.
Obrigado!.
-
Por ammorei
Boa Noite!
Estou montando um CRUD, peguei alguns códigos na Internet e adaptei para a minha necessidade, tudo estava correndo perfeitamente bem, mas quando cheguei na parte de UPDATE a aplicação me apresenta o seguinte erro: Warning: PDOStatement::execute(): SQLSTATE[HY093].
Gostaria da ajuda de vocês para resolver meu problema.
Segue Código:
<?php $id=isset($_GET['id']) ? $_GET['id'] : die('ERROR: ID não encontrado.'); include 'config/database.php'; if($_POST){ try{ $query = "UPDATE alunos SET nome=:nome, responsavel=:responsavel, telefone=:telefone, ensino=:ensino, serie=:serie, visita=:visita, entrevista=:entrevista, teste_data=:teste_data, teste_result=:teste_result, matricula=:matricula, data_matricula=:data_matricula, observacao=:observacao WHERE id = :id"; $stmt = $con->prepare($query); $nome=htmlspecialchars(strip_tags($_POST['nome'])); $responsavel=htmlspecialchars(strip_tags($_POST['responsavel'])); $telefone=htmlspecialchars(strip_tags($_POST['telefone'])); $ensino=htmlspecialchars(strip_tags($_POST['ensino'])); $serie=htmlspecialchars(strip_tags($_POST['serie'])); $visita=htmlspecialchars(strip_tags($_POST['visita'])); $entrevista=htmlspecialchars(strip_tags($_POST['entrevista'])); $teste_data=htmlspecialchars(strip_tags($_POST['teste_data'])); $teste_result=htmlspecialchars(strip_tags($_POST['teste_result'])); $matricula=htmlspecialchars(strip_tags($_POST['matricula'])); $data_matricula=htmlspecialchars(strip_tags($_POST['data_matricula'])); $observacao=htmlspecialchars(strip_tags($_POST['observacao'])); $visita=date("Y-m-d",strtotime(str_replace('/','-',$visita))); $entrevista=date("Y-m-d",strtotime(str_replace('/','-',$entrevista))); $teste_data=date("Y-m-d",strtotime(str_replace('/','-',$teste_data))); $data_matricula=date("Y-m-d",strtotime(str_replace('/','-',$matricula))); $stmt->bindParam(':nome', $nome); $stmt->bindParam(':responsavel', $responsavel); $stmt->bindParam(':telefone', $telefone); $stmt->bindParam(':ensino', $ensino); $stmt->bindParam(':serie', $serie); $stmt->bindParam(':visita', $visita); $stmt->bindParam(':entrevista', $entrevista); $stmt->bindParam(':teste_data', $teste_data); $stmt->bindParam(':teste_result', $teste_result); $stmt->bindParam(':matricula', $matricula); $stmt->bindParam(':data_matricula', $data_matricula); $stmt->bindParam(':observacao', $observacao); if($stmt->execute()){ echo "<div class='alert alert-success'>Atualização realizado com sucesso.</div>"; }else{ echo "<div class='alert alert-danger'>Não foi possível atualizar o registro. Por favor, tente novamente.</div>"; } } catch(PDOException $exception){ die('ERROR: ' . $exception->getMessage()); } } ?> Desde já agradeço a ajuda.
-
Por josenilson
Boa tarde para todos !
estou tentando criar um formulário de login e senha com utilizando HTML, PHP, E PDO
ate o momento estou em um impasse tenho o formulário em HTML ok tenho uma pagina chamada conexão em php OK
e tenho uma outra pagina chamado logar.php onde basicamente esta pagina faz a verificação de tudo os valores digitados no form HTMl
nesta também já tem um include "conexão.php"
mas quando eu rodo essa programação acontece o seguinte erro na pagina logar.php.
PDOException: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in C:\xampp\htdocs\WEB\logar.php:20 Stack trace: #0 C:\xampp\htdocs\WEB\logar.php(20): PDOStatement->execute() #1 {main}
segue abaixo o código da pagina.
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<?php
include "conexao.php";
if (isset($_POST['logar'])){
$login = trim(strip_tags($_POST['login']));
$senha = trim(strip_tags($_POST['senha']));
//SELECIONA O BANCO DE DADOS
$select = "SELECT * FROM sistema WHARE usuario=:usuario AND senha:=senha";
try {
$result = $conexao->prepare($select);
$result->bindParam(':usuario', $usuario, PDO::PARAM_STR);
$result->bindParam(':senha',$senha, PDO::PARAM_STR);
$result->execute(); nesta parte que vem o erro SQLSTATE[HY093]:
$contar = $result->rowCount();
if ($contar>0){
$usuario = $_POST['login'];
$senha = $_POST['senha'];
$_SESSION['usuario'] = $usuario;
$_SESSION['senha'] = $senha;
echo 'logado com sucesso';
header ("refresh: 5 desktop.php");
}else{
echo 'os dados digitados estão incorretos';
}
} catch(PDOException $e) {
echo $e;
}
}
?>
Não estou conseguindo resolver esta parte do erro pois sou iniciante em programação e peço e sua ajuda
ao postar se possível peço por gentileza que mostre o resultado já inserido no código para maior entendimento do resultado agradeço.
att; josenilson pereira
-