Foros del Web » Programando para Internet » PHP »

Php formulario con PDO en mysql

Estas en el tema de Php formulario con PDO en mysql en el foro de PHP en Foros del Web. Estimados: Tengo el siguiente código de conexión a la db: <?php try { $db = new PDO("mysql:host=".localhost."; dbname=".php_registro, root, ""); $db->setAttribute(PDO::ATTR_ERRMODE, PDO:: ERRMODE_EXCEPTION); } catch ...
  #1 (permalink)  
Antiguo 08/06/2022, 15:08
 
Fecha de Ingreso: julio-2014
Ubicación: Donde me lleve el tiempo
Mensajes: 45
Antigüedad: 7 años, 11 meses
Puntos: 0
Php formulario con PDO en mysql

Estimados:
Tengo el siguiente código de conexión a la db:

<?php
try
{
$db = new PDO("mysql:host=".localhost."; dbname=".php_registro, root, "");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO:: ERRMODE_EXCEPTION);
}
catch (PDOException $exception)
{
die('Error: '.$exception);
}
?>
Al ejecutar el formulario me muestra el siguiente aviso: } ?>
Fatal error: Uncaught Error: Call to undefined method PDOStatement::bind_param() in C:\xampp\htdocs\route\Sistema-de-registro-y-login-basado-en-ajax-jquery-lightbox\ajax-login-registration.php:56 Stack trace: #0 {main} thrown in C:\xampp\htdocs\route\Sistema-de-registro-y-login-basado-en-ajax-jquery-lightbox\ajax-login-registration.php on line 56. Donde en dicha línea tengo este código:

$selectQuery = $db->prepare("select * from tbl_registro where email_id = ? and password = ?");
$selectQuery->bind_param("ss", $emailId, $password);
$selectQuery->execute();

Agradezco la colaraboción, porque no sé donde modificar para que funcione.
Slds
Jdel

Última edición por jdelrosario; 08/06/2022 a las 15:14
  #2 (permalink)  
Antiguo 21/06/2022, 11:18
Avatar de teslas  
Fecha de Ingreso: febrero-2013
Ubicación: Barcelona
Mensajes: 105
Antigüedad: 9 años, 4 meses
Puntos: 1
Respuesta: Php formulario con PDO en mysql

El problema lo tienes en la linea:

$selectQuery->bind_param("ss", $emailId, $password);

Es una consulta donde tienes que mirar que el email y password sean del tipo cadena ya que cada una de las 's' son

s --> La variable correspondiente tiene tipo cadena.

Lo más seguro que en tu código no hagas referencia al objeto $pdo mediante la definición de una instancia. Prueba con esto
Código:
$pdo = db::getInstance();
$selectQuery = $pdo->prepare("select * from tbl_registro where email_id = ? and password = ?");
$selectQuery->bind_param("ss", $emailId, $password);
$selectQuery->execute();



La zona horaria es GMT -6. Ahora son las 12:38.