Hola que tal ?
Bueno basicamente mi problema es un problema de conexion.. pues pasa lo siguiente
Tengo dos funciones uno para insertar y otro para mostrar las cuales al momento de iniciar la clase el metodo construct pasa el valor de conexion.
Código PHP:
require_once("Conexion.php"):
class clase{
private $mysqli;
public function __construct()
{
$this->mysqli=Conectar::conexion(); // Conexion mysqli proveniente de la clase conexion.
} // METODO CONSTRTUCTR
public function get_datos($par) // obtiene datos
{
$mysqli=$this->mysqli;
$sql="select * from tabla where nomkey= ? ";
$stmt=$mysqli->prepare($sql);
$stmt->bind_param('s',$par);
//ETC
} //end method
public function insert($si,$no) // inserta datos
{
$mysqli=$this->mysqli;
$sql="insert into tabla values (null,?,?,now(),now(),'jpg')";
$as=$mysqli->prepare($sql);
var_dump($as);
$as->bind_param("ss",$si,$no);
//ETC
}
}// end class usuario
$user=new Usuario();
?>
El problema es el siguiente ...
La primera funcion me resulta perfecta...
Y al ejecutar la segunda (Insertar) Me sale el error:
Problema Call to a member function bind_param() on a non-object
..
En la segunda funcion hice un var_dump de stmt y me vuelca NULL.
osea que $mysqli->prepare() no le esta entregando el valor a $stmt.
$mysqli=$this->mysqli;
$stmt=mysqli->prepare(); // NULL
Lo extraño es que hago lo mismo en la funcion 1 y si lo toma .
... funcion1()
{
$mysqli=$this->mysqli;
$stmt=mysqli=prepare(); // PERFECTO!}
}
funcion2()
{
$mysqli=$this->mysqli;
$stmt=mysqli=prepare(); // NULL
}