Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Pasar de mysql a mysqli

quisiera saber como pasar mi pagina web hecha con mysql a mysqli y no morir en el intento
Editado
0
Puntos
3
Resp
5398
Visitas
Por fernandoury hace 28 meses
Principiante offline Sitio web

Respuesta #1

...Y no morir en el intento jajaja.

Bueno, te explicaré algunas cosas básicas por pasos:

1.- La Conexión
Antes se usaba
<?php
$con = mysql_connect("hostname","username","password);
$db = mysql_select_db("basename");
?>
Pero ya no, ahora puedes usar las siguientes alternativas. Una muy similar a la anterior y la otra es orientado a objetos haciendo una instancia el objeto mysqli.
<?php
$con = mysqli_connect("hostname","username","password","basename"); // Alternativa 1

$con = new mysqli("hostname","username","password","basename"); // Alternativa 2
?>

2.- Consultas
Antes usábamos
<?php
$query = mysql_query("SELECT * FROM table", $con);
?>
Ahora no, ahora hay dos formas de hacerlo. Una muy similar a la anterior y la otra es orientada a objetos, asumiendo que la conexión es un objeto (para ello se debe haber usado la alternativa 2 de la conexión).
<?php
$query = mysqli_query($con, "SELECT * FROM table"); // Alternativa 1

$query = $con->query("SELECT * FROM table"); // Alternativa 2
?>

3.- Función escape de caracteres.
Si usas Dreamweaver, o has usado su función GetSQLValueString() podrás haber notado que en el desarrollo de ésta función hay una función nativa de PHP llamada mysql_real_escape_string(). Y si no has usado nada de eso de Dreamweaver, quizás sí las usado, ya que esa función mysql_real_escape_string() nos permite evadir el SQL Injection, bien.. Antes esta función era:
<?php mysql_real_escape_string($string); ?>
Y ahora es muy similar
<?php mysqli_real_escape_string($string); ?>
Siendo $string alguna cadena de texto generalmente recibida desde algún formulario (enviada por el usuario).

3.- Fetch Array
Antes para obtener un arreglo de datos de una consulta utilizábamos
<?php
$row = mysql_fetch_array($query);
?>
Siendo $query la consulta.. Pero ahora están dos alternativas. Una muy similar a la primera y la otra orientada a objetos (para ello se debe haber realizado la alternativa 2 de conexión).
<?php
$row = mysqli_fetch_array($query); // Alternativa 1

$row = $query->fetch_array(); // Alternativa 2
?>

4.- Contar las filas
Cuando hacemos una consulta a veces queremos saber cuántos resultados halló, o incluso validar preguntando si existe al menos un resultado, para eso usábamos
<?php
$num_rows = mysql_num_rows($query);
?>
Pero ahora usamos una de estas dos alternativas, la primera similar a la anterior y la segunda orientada a objetos (para ello es necesario haber realizado una conexión con la segunda alternativa).
<?php
$num_rows = mysqli_num_rows($query); // Alternativa 1

$num_rows = $query->num_rows; // Alternativa 2
?>
Siendo $query la consulta.
__________________________________________________________________________________

Bien, ahora ¿Qué alternativa es mejor?
Ambas alternativas son válidas, aunque personalmente, creo que el lenguaje hoy día se está manejando más orientado a objetos, incluso es una de las cosas que ha rescatado a PHP, yo recomiendo aprenderlo y no es complicado: "PHP Orientado a Objetos".

Estos fueron algunos términos básicos, pero si buscas en la Documentación Oficial por alguna función obsoleta mysql_* encontrarás que te hacen referencia a utilizar la nueva sintaxis mysqli_* y te muestran algunos ejemplos de como se usa. Saludos :-)
1
Puntos
Por Jose hace 28 meses
Experto offline Sitio web

Respuesta #2

pufff excelente como todos tus aportes... mil gracias..
0
Puntos
Por fernandoury hace 28 meses
Principiante offline Sitio web

Respuesta #3

mira esta pequeña guía, en realidad son unos pequeños cambios https://www.datoweb.com/post/2486/ejemplos-de-como-usar-mysqli-de-manera-facil
1
Puntos
Por alber hace 28 meses
Administrador offline

Relaccionados

Para comentar Inicia sesión o Registrate