Llamada al método no definido mysqli_stmt::get_result
Aquí está mi código:
include 'conn.php';
$conn = new Connection();
$query = 'SELECT EmailVerified, Blocked FROM users WHERE Email = ? AND SLA = ? AND `Password` = ?';
$stmt = $conn->mysqli->prepare($query);
$stmt->bind_param('sss', $_POST['EmailID'], $_POST['SLA'], $_POST['Password']);
$stmt->execute();
$result = $stmt->get_result();
Recibo el error en la última línea como: Llamada al método no definido mysqli_stmt::get_result()
Aquí está el código para conn.php:
define('SERVER', 'localhost');
define('USER', 'root');
define('PASS', 'xxxx');
define('DB', 'xxxx');
class Connection{
/**
* @var Resource
*/
var $mysqli = null;
function __construct(){
try{
if(!$this->mysqli){
$this->mysqli = new MySQLi(SERVER, USER, PASS, DB);
if(!$this->mysqli)
throw new Exception('Could not create connection using MySQLi', 'NO_CONNECTION');
}
}
catch(Exception $ex){
echo "ERROR: ".$e->getMessage();
}
}
}
Si escribo esta línea:
if(!stmt) echo 'Statement prepared'; else echo 'Statement NOT prepared';
Imprime 'Declaración NO preparada' . ¿Si ejecuto la consulta directamente en el IDE reemplazando? marcas con valores, funciona bien. Tenga en cuenta que el objeto $conn funciona bien en otras consultas del proyecto.
Alguna ayuda por favor.......
Lea las notas de usuario para este método:
http://php.net/manual/en/mysqli-stmt.get-result.php
Requiere el controlador mysqlnd... Si no está instalado en tu espacio web tendrás que trabajar con bind_result()
& fetch()
!
Con PHP versión 7.2 simplemente usé nd_mysqli en lugar de mysqli y funcionó como se esperaba.
Pasos para habilitarlo en el servidor de alojamiento de godaddy.
- Inicie sesión en cpanel.
- Haga clic en "Seleccionar versión de PHP" .
- Como se proporciona en la instantánea de las últimas configuraciones, desmarque "mysqli" y habilite "nd_mysqli" .