我制作了这段代码:
class Consultas{
public function insertarUsuario($arg_nombre, $arg_usuario, $arg_passwd){
$modelo = new Conexion();
$conexion = $modelo->get_conexion();
$sql = "insert into tablausuarios (nombre, usuario,password) values(:nombre, :usu, :passw)";
$statement = $conexion->prepare($sql);
$statement->bindParam(':nombre', $arg_nombre);
$statement->bindParam(':usuario', $arg_usuario);
$statement->bindParam(':password', $arg_passwd);
if($statement->execute(array(":nombre"=>$arg_nombre, ":usuario"=>$arg_usuario, ":password"=>$arg_passwd))){
return "Registro creado satisfactoriamente";
}else{
return "error al crear registro";
}
}
并出现此错误:PDOStatement :: execute():SQLSTATE [HY093]:参数号无效:参数未在
中定义有人可以帮助我吗?
答案 0 :(得分:0)
你正在重复绑定参数。并且你的参数在你的执行方法上是不一样的。我已尝试更新代码。
将此代码更新为:
class Consultas{
public function insertarUsuario($arg_nombre, $arg_usuario, $arg_passwd){
$modelo = new Conexion();
$conexion = $modelo->get_conexion();
$sql = "insert into tablausuarios (nombre, usuario,password) values(:nombre, :usu, :passw)";
$statement = $conexion->prepare($sql);
if($statement->execute(array(":nombre"=>$arg_nombre, ":usu"=>$arg_usuario, ":passw"=>$arg_passwd))){
return "Registro creado satisfactoriamente";
}else{
return "error al crear registro";
}
}
希望这会对你有所帮助:)
答案 1 :(得分:0)
class Consultas{
public function insertarUsuario($arg_nombre, $arg_usuario, $arg_passwd){
$modelo = new Conexion();
$conexion = $modelo->get_conexion();
$statement = $conexion->prepare("insert into tablausuarios (nombre, usuario,password) values (?,?,?)");
if($statement->execute(array($arg_nombre,$arg_usuario,$arg_passwd))){
return "Registro creado satisfactoriamente";
}else{
return "error al crear registro";
}
}
尝试这个建议我觉得它可以帮到你