Foros del Web » Programando para Internet » PHP »

sobre php - mysqli

Estas en el tema de sobre php - mysqli en el foro de PHP en Foros del Web. estoy empezando con mysqli y me encuentro con que hay dos formas: -Forma procedual y la forma orientada a objetos. tengo una clase para conectarme ...
  #1 (permalink)  
Antiguo 19/03/2014, 13:59
Avatar de cristo995  
Fecha de Ingreso: noviembre-2012
Mensajes: 187
Antigüedad: 11 años, 5 meses
Puntos: 0
sobre php - mysqli

estoy empezando con mysqli y me encuentro con que hay dos formas:
-Forma procedual y la forma orientada a objetos.

tengo una clase para conectarme a la Bd con una funcion para hacer un select simpel y mostrar algunos registros : esto es solo un ejemplo mientras agarro la caña a mysqli y tambien na la POO.

entonces de la forma procedual el script me funcioan bien y me a qudado asi:

class conexion{
private $host;
private $user;
private $pass;
private $bd;
private $cone;

//Declaracion del constructor
// Una de las formas de declarar el constructor : function __construct() {}
// Otra forma es con el mismo nombre de la clase : function conexion() {}

function __construct(){
$this->host='localhost';
$this->user='root';
$this->pass='';
$this->bd ='personas';
$this->cone;

$this->cone = mysqli_connect($this->host,$this->user,$this->pass,$this->bd)or die("Error en el servidor:<br>".mysqli_error());

}

function mostrar_registros(){
$query = mysqli_query($this->cone,"SELECT * FROM personas") or die("Error en la consulta:<br>".mysqli_error());
while($registros=mysqli_fetch_assoc($query)){
$nombre = $registros['nombre'];
$apellido= $registros['apellido'];

echo $nombre.'=>'.$apellido.'<br>';

}
}

}
$obeto = new conexion();
$objeto->mostrar_registros();

Todo esto funaciona bien .. ahora vamos con la forma orientada a objetos.
_______________________________
class conexion{
private $host;
private $user;
private $pass;
private $bd;
private $cone;

function conexion(){

$this->host='localhost';
$this->user='root';
$this->pass='';
$this->bd ='personas';
$this->cone;

$this->cone = new mysqli($host,$user,$pass,$bd);


if(mysqli_connect_errno())
echo 'Error en la conexion:<br>'.mysqli_error();
else
echo 'Conexion con el servidor exitosa';
}

function mostrar_registros(){
$sq = "SELECT * FROM personas";

}
}

el problema va en la funcion mostrar_registros() , la cual no sabria como hacer el select, segun lo que e visto y como se puede observar e creado un objeto $this->cone para instanciar a mysqli($host etc......)

y dice que para hacer algun query solo seria usar el objeto con la palabra query.
algo como:
$objeto = new mysqli($host etc.... )
$objeto->query("select ... etc...) // esta es la parte que no se como hacer en la funcion... mostrar_registros():

agradeceria vuestra ayuda .. me gustaria que el codigo me quedase con la funcion mostrar_registros y dentro poder hacer el query.. con mysqli de la forma
  #2 (permalink)  
Antiguo 19/03/2014, 16:04
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: sobre php - mysqli

Hay cosas tan simples como éstas que pueden ser resueltas fácilmente si se lee el respectivo manual: http://www.php.net/manual/es/mysqli.query.php

Como realizas la conexión con el estilo orientado a objetos, te sugiero que te fijes en el ejemplo en donde se realiza una consulta con dicho estilo. Una observación; no mezcles ambos estilos, porque por un lado, realizas la conexión con el estilo orientado a objetos, pero intentas detectar el error en la conexión con el estilo por procedimientos. Debes hacerlo con el mismo estilo con el que realizas la conexión.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 19/03/2014, 17:09
Avatar de cristo995  
Fecha de Ingreso: noviembre-2012
Mensajes: 187
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: sobre php - mysqli

hola. gracias por responder.
bueno. quizas no me supe explicar.

como dije antes "solo es un ejemplo mientras agarro la caña" . no estoy mezclando las dos formas era un simple ejemplo nada mas..,

solo que me gustaria usar el estilo por objetos y aparte de esto tener una funcion en donde se ejecute: una consulata , o un insert , o un update etcc..

y asi luego crear el objeto de la clase y poder llamar dicha funcion .

pero por lo que veo no sera posible con la forma orientada a objetos me tocara con la forma por procedimientos..
  #4 (permalink)  
Antiguo 19/03/2014, 19:01
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: sobre php - mysqli

Cita:
Iniciado por cristo995 Ver Mensaje
hola. gracias por responder.
bueno. quizas no me supe explicar.

como dije antes "solo es un ejemplo mientras agarro la caña" . no estoy mezclando las dos formas era un simple ejemplo nada mas..,

solo que me gustaria usar el estilo por objetos y aparte de esto tener una funcion en donde se ejecute: una consulata , o un insert , o un update etcc..

y asi luego crear el objeto de la clase y poder llamar dicha funcion .

pero por lo que veo no sera posible con la forma orientada a objetos me tocara con la forma por procedimientos..
Claro que es posible. Pero lo mejor es que estudies un poco la teoría por que de otra forma darte ideas solo hara que te confundas.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Etiquetas: mysql, mysqli, registro, select, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:30.