Pregunta:
Fecha: 23-09-2020 17:51:39
(En Español)
no logro identificar el error, se supone que es por diferencias pero la verdad no las encuentro.
Class Datos extends Conexion{
public function registroUsuariosModel($datosModel, $tabla){
$stmt = Conexion::conectar()->prepare("INSERT INTO $tabla (UsuNumeroDocumento,UsuTipoDocumento,
UsuNombres, UsuApellidos, UsuNumeroCelular,
UsuCiudad, UsuBarrio, UsuDireccion, UsuMayorEdad, Usupassword,
Usurol)
VALUES(:documentoregistro,:tipodocumentoregistro,:nombresregistro,:apellidosregistro,
:celularregistro,:ciudadregistro,
:barrioregistro,:direccionregistro,:mayoredadregistro,:contraseñaregistro,rolregistro)");
$stmt-> bindParam(":documentoregistro",$datosModel["UsuNumeroDocumento"],PDO::PARAM_INT);
$stmt-> bindParam(":tipodocumentoregistro",$datosModel["UsuTipoDocumento"],PDO::PARAM_STR);
$stmt-> bindParam(":nombresregistro",$datosModel["UsuNombres"],PDO::PARAM_STR);
$stmt-> bindParam(":apellidosregistro",$datosModel["UsuApellidos"],PDO::PARAM_STR);
$stmt-> bindParam(":celularregistro",$datosModel["UsuNumeroCelular"],PDO::PARAM_INT);
$stmt-> bindParam(":ciudadregistro",$datosModel["UsuCiudad"],PDO::PARAM_STR);
$stmt-> bindParam(":barrioregistro",$datosModel["UsuBarrio"],PDO::PARAM_STR);
$stmt-> bindParam(":direccionregistro",$datosModel["UsuDireccion"],PDO::PARAM_STR);
$stmt-> bindParam(":mayoredadregistro",$datosModel["UsuMayorEdad"],PDO::PARAM_STR);
$stmt-> bindParam(":passwordregistro",$datosModel["Usupassword"],PDO::PARAM_STR);
$stmt-> bindParam(":rolregistro",$datosModel["Usurol"],PDO::PARAM_STR);
if ($stmt -> execute()){ ------ ESTA ES LA LINEA EN LA QUE DICE QUE ESTA EL ERROR
return "Correcto";
}
else "Error";
}
Votos: 0 - Respuestas: 2 - Vistas: 4 Compartir en: Google Facebook Twitter LinkedIn Link
Saludos!! agradezco me puedan ayudar con el error -PDOStatement::execute(): SQLSTATE[HY093] en PHP[No resuelta]
Buenas noches, por favor ayudenme el error reportado es -PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in-no logro identificar el error, se supone que es por diferencias pero la verdad no las encuentro.
Class Datos extends Conexion{
public function registroUsuariosModel($datosModel, $tabla){
$stmt = Conexion::conectar()->prepare("INSERT INTO $tabla (UsuNumeroDocumento,UsuTipoDocumento,
UsuNombres, UsuApellidos, UsuNumeroCelular,
UsuCiudad, UsuBarrio, UsuDireccion, UsuMayorEdad, Usupassword,
Usurol)
VALUES(:documentoregistro,:tipodocumentoregistro,:nombresregistro,:apellidosregistro,
:celularregistro,:ciudadregistro,
:barrioregistro,:direccionregistro,:mayoredadregistro,:contraseñaregistro,rolregistro)");
$stmt-> bindParam(":documentoregistro",$datosModel["UsuNumeroDocumento"],PDO::PARAM_INT);
$stmt-> bindParam(":tipodocumentoregistro",$datosModel["UsuTipoDocumento"],PDO::PARAM_STR);
$stmt-> bindParam(":nombresregistro",$datosModel["UsuNombres"],PDO::PARAM_STR);
$stmt-> bindParam(":apellidosregistro",$datosModel["UsuApellidos"],PDO::PARAM_STR);
$stmt-> bindParam(":celularregistro",$datosModel["UsuNumeroCelular"],PDO::PARAM_INT);
$stmt-> bindParam(":ciudadregistro",$datosModel["UsuCiudad"],PDO::PARAM_STR);
$stmt-> bindParam(":barrioregistro",$datosModel["UsuBarrio"],PDO::PARAM_STR);
$stmt-> bindParam(":direccionregistro",$datosModel["UsuDireccion"],PDO::PARAM_STR);
$stmt-> bindParam(":mayoredadregistro",$datosModel["UsuMayorEdad"],PDO::PARAM_STR);
$stmt-> bindParam(":passwordregistro",$datosModel["Usupassword"],PDO::PARAM_STR);
$stmt-> bindParam(":rolregistro",$datosModel["Usurol"],PDO::PARAM_STR);
if ($stmt -> execute()){ ------ ESTA ES LA LINEA EN LA QUE DICE QUE ESTA EL ERROR
return "Correcto";
}
else "Error";
}
Votos: 0 - Respuestas: 2 - Vistas: 4 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 23-09-2020 18:41:29 Hola Daniela,
Tienes un pequeño error.
En estas líneas:
$stmt = Conexion::conectar()->prepare("INSERT INTO $tabla (UsuNumeroDocumento,UsuTipoDocumento, UsuNombres, UsuApellidos, UsuNumeroCelular, UsuCiudad, UsuBarrio, UsuDireccion, UsuMayorEdad, Usupassword, Usurol) VALUES(:documentoregistro,:tipodocumentoregistro,:nombresregistro,:apellidosregistro, :celularregistro,:ciudadregistro, :barrioregistro,:direccionregistro,:mayoredadregistro,:contraseñaregistro,rolregistro)");
Debería decir:
$stmt = Conexion::conectar()->prepare("INSERT INTO $tabla (UsuNumeroDocumento,UsuTipoDocumento, UsuNombres, UsuApellidos, UsuNumeroCelular, UsuCiudad, UsuBarrio, UsuDireccion, UsuMayorEdad, Usupassword, Usurol) VALUES(:documentoregistro,:tipodocumentoregistro,:nombresregistro,:apellidosregistro, :celularregistro,:ciudadregistro, :barrioregistro,:direccionregistro,:mayoredadregistro,:contraseñaregistro,:rolregistro)");
El error es en la variable rolregistro
Espero te ayude.
Saludos! Votos: 0 - Link respuesta -
Fecha: 23-09-2020 18:44:11 Ojo que no es recomendable utilizar caracteres como la 'ñ' para nombres de variables pues puede verse afectada por la codificación seleccionada.
Si puedes cambiala por una 'n'. Votos: 0 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
