Contenido
1. Introducción. ....................................................................................................................... 3
2. Sistemas de Objetivos. ....................................................................................................... 3
2.1 Objetivo General: ........................................................................................................ 3
2.2 Objetivos Específicos. ................................................................................................. 3
3. Desarrollo. .......................................................................................................................... 4
3.1 mysqli::query ............................................................................................................... 4
3.2 mysqli::prepare ............................................................................................................ 4
3.3 mysqli_stmt::prepare ................................................................................................... 5
3.4 mysqli_stmt::bind_param ............................................................................................ 6
3.5 mysqli_stmt::bind_result.............................................................................................. 7
3.6 mysqli_stmt::execute................................................................................................... 9
3.7 mysqli_stmt::fetch........................................................................................................ 9
3.8 mysqli_stmt::get_result ............................................................................................. 10
3.9 mysqli_stmt::$error .................................................................................................... 11
3.10 mysqli_stmt::$errno ................................................................................................... 11
4. Conclusiones. ................................................................................................................... 13
5. Recomendaciones. ........................................................................................................... 13
6. Bibliografía ........................................................................................................................ 14
7. Anexos. ............................................................................................................................. 14
1. Introducción.
En el siguiente informa investigativo se detallará la información más relevante acerca de las
funciones más utilizadas en el lenguaje PHP, así como también se definirán su utilidad,
característica, parámetros y sobre todo los valores que retorna cada función.
La programación es una actividad muy valorada y con una demanda extra ordinal en el
mercado. El código PHP se ejecuta en el servidor que, al leer los comandos, puede activar
todos los elementos funcionales y la interfaz visual del sitio web. Dado que PHP es un
lenguaje de código abierto, no hay costo para los programadores que quieran usarlo, lo cual
es una gran ventaja, especialmente para los autónomos.
2. Sistemas de Objetivos.
2.1 Objetivo General:
Realizar un informe de investigación del tema PHP Query de las funciones más
usadas y los parámetros que se envían en ellas.
2.2 Objetivos Específicos.
Definir características.
Describir el funcionamiento.
Reconocer la sintaxis.
Crear ejemplos de sintaxis.
3. Desarrollo.
3.1 mysqli::query
Su principal característica es que sirve para realizar una consulta dada por query a la base de
datos. A continuación, se presenta la sintaxis para el estilo Orientada a Objetos y por
Procedimientos.
Orientada a Objetos.
mysqli::query(string $query, int $resultmode = MYSQLI_STORE_RESULT)
Procedimeintos.
mysqli_query(mysqli $link, string $query, int $resultmode =
MYSQLI_STORE_RESULT)
Parámetros.
A continuación, se muestran los parámetros de la función ya mencionada anteriormente.
Link.
Solo se usa cuando se aplica programación por procedimientos. Devuelve un enlace por la
función conect o init.
Query.
Es de tipo String y aquí netamente se realiza la petición o la consulta a la base de datos.
Valores devueltos.
Si una consulta se ejecuta correctamente la función retornará un objeto de tipo mysqli_result
y está retornará un valor verdadero(true).
3.2 mysqli::prepare
Su principal función es que sirve para preparar una sentencia SQL para su debida ejecución.
Está orientada a dos paradigmas que es la programación Orientada a objetos y la
programación por procedimientos.
Orientada a Objetos.
mysqli::prepare(string $query)
Procedimientos.
mysqli_prepare(mysqli $link, string $query)
Parámetros.
A continuación, se muestran los parámetros de la función ya mencionada anteriormente.
Link.
Solo se usa cuando se aplica programación por procedimientos. Devuelve un enlace por la
función conect o init.
Query.
Recive como parámetro la consulta hecha de tipo string, donde no se debe agregar un punto y
coma a la consulta hecha.
Valores devueltos.
mysqli_prepare() devuelve un objeto de sentencia si todo es correcto caso contrario devolverá
un false si ocurre un error. A continuación, se muestra un ejemplo de la utilidad de la función
ya mencionada anteriormente.
$mysqli->prepare("SELECT District FROM City WHERE Name=?"))
3.3 mysqli_stmt::prepare
Igual que las que hemos visto hasta ahora, está función tiene la utilidad principal es que
prepara una consulta SQL para su ejecución.
Orientado a Objetos.
mysqli_stmt::prepare(string $query)
Procedimental.
mysqli_stmt_prepare(mysqli_stmt $stmt, string $query)
Parámetros.
Stmt
Solo se usa para estilos por procedimientos.
Query.
Debe ser una sentencia SQL única, se puede incluir más de un marcador de parámetro en la
sentencia SQL embebido el signo de interrogación en la posición apropiada.
Valores Devueltos.
Devuelve un TRUE en caso de que todo sea exitoso, caso contrario un FALSE si se comete
algún error.
3.4 mysqli_stmt::bind_param
Agrega variables a una sentencia preparada como parámetros. La función enlaza los
parámetros con la consulta SQL y le dice a la base de datos que parámetros son.
Orientado a Objetos.
mysqli_stmt::bind_param(string $types, mixed &$var1, mixed &$... = ?):
Procedimental.
mysqli_stmt_bind_param(
mysqli_stmt $stmt,
string $types,
mixed &$var1,
mixed &$... = ?
)
Parámetros.
Stmt
Solo se usa para estilos por procedimientos.
Types
Si una cadena contiene uno o más caracteres se deben especificar los tipos para que tengan un
debido enlace de variables.
Var1
El número de variable y la longitud de cadena del parámetro Type debe coincidir con los
parámetros en la sentencia.
Valores Devueltos.
Devuelve un TRUE en caso de que todo sea exitoso, caso contrario un FALSE si se comete
algún error.
3.5 mysqli_stmt::bind_result
Su funcionalidad consiste en vincular las variables a una sentencia SQL para el
almacenamiento de resultados.
Orientado a Objetos.
mysqli_stmt::bind_result(mixed &$var1, mixed &$... = ?)
Procedimientos.
mysqli_stmt_bind_result(mysqli_stmt $stmt, mixed &$var1, mixed &$... =
?)
Recordar: Todas las columnas deben ser vinculadas después de llamar a la función execute y
antes de llamar a fetch. Una columna puede ser vinculada las veces que se desea, incluso
después de haber devuelto los datos.
Parámetros.
Stmt
Solo se usa para la programación en procedimientos.
Var1.
Es la variable a vincular.
Valores Devueltos.
Devuelve TRUE en caso de éxito, caso contrario FALSE si ocurre algún error.
Ejemplo.
Orientado a Objetos.
/* sentencia preparada */
if ($sentencia = $mysqli-
>prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
$sentencia->execute();
/* vincular variables a la sentencia preparada */
$sentencia->bind_result($col1, $col2);
Procedimental.
/* sentencia preparada */
if ($sentencia = mysqli_prepare($enlace, "SELECT Code, Name FROM Countr
y ORDER BY Name LIMIT 5")) {
mysqli_stmt_execute($sentencia);
/* vincular variables a la sentencia preparada */
mysqli_stmt_bind_result($sentencia, $col1, $col2);
/* obtener valores */
while (mysqli_stmt_fetch($sentencia)) {
printf("%s %s\n", $col1, $col2);
}
3.6 mysqli_stmt::execute
Su principal función es ejecutar una consulta preparada. A continuación, se presenta la
sintaxis para la programación orientada a objetos y procedimental.
Orientado a Objetos.
mysqli_stmt::execute()
Procedimental.
mysqli_stmt_execute(mysqli_stmt $stmt)
Parámetros.
Stmt.
Solo se utiliza para la programación de estilo en procedimental o también conocida como
programación por procedimiento.
Valores Devueltos.
Devuelve TRUE si todo se ejecuta correctamente, caso contrario FALSE en caso de error.
3.7 mysqli_stmt::fetch
Su principal función es de obtener todos los resultados de una sentencia preparada en las
variables vinculadas. A continuación, se muestra el estilo vinculado a los dos paradigmas de
la programación, orientada a objetos y la procedimental.
Orientado a Objetos.
mysqli_stmt::fetch()
Procedimental.
mysqli_stmt_fetch(mysqli_stmt $stmt)
Parámetros.
Stmt.
Solo se usa para estilos por procedimientos, el identificador de declaraciones por un init.
Valores Devueltos.
A diferencia de los que hemos visto en el transcurso de este informe. Esta función devuelve
tres parámetros, TRUE si los datos se han obtenido, FALSE si ocurrió un error. Caso
contrario NULL si no existen más filas.
3.8 mysqli_stmt::get_result
Su funcionalidad consiste en obtener un conjunto de resultados de una sentencia preparada.
Es llamada, para devolver un conjunto de resultados de una consulta ya preparada.
Orientada a Objetos.
mysqli_stmt::get_result()
Procedimiento.
mysqli_stmt_get_result(mysqli_stmt $stmt)
Parámetros.
Stmt
Solo estilos por procedimientos, la cual devuelve una función msqli de tipo init.
Valores Devueltos.
Esta función, devuelve un conjunto de resultados para consultas SELECT y en el otro caso
false para consultas DML o en caso que falle algo en código. Dispone solo de un controlador
nativo de mysqlnd.
3.9 mysqli_stmt::$error
Su funcionalidad consiste en devolver una descripción en forma de texto al último error de
una sentencia. A continuación, se muestran los dos tipos de programación que se pueden usar
en esta función. Devuelve un string que contiene el mensaje de error de la función de la
sentencia invocada más recientemente que tuvo éxito o falló.
Orientada a Objetos.
$mysqli_stmt->error
Procedimental.
mysqli_stmt_error(mysqli_stmt $stmt)
Parámetros.
Stmt.
Solo se aplica para la programación de tipo procedimental y de igual forma devuelve una
función de tipo init.
Valores Devueltos.
Devuelve un solo tipo de dato, un string que describe el mensaje si falló y un mensaje vacio
si no ocurrió ningún tipo de error.
3.10 mysqli_stmt::$errno
Tiene la función, de devolver el código de error en la llamada de la sentencia hecha más
reciente. De igual forma consiste en dos paradigmas de la programación que a continuación
se presenta.
Orientados a objetos.
int $mysqli_stmt->errno;
Procedimientos.
mysqli_stmt_errno(mysqli_stmt $stmt)
Parámetros.
Stmt.
Solo se aplica cuando se vaya a utilizar la programación por procedimientos. Consta de un
identificador de declaraciones devuelto por una función mysqli_stmt_init().
Valores Devueltos.
Devuelve valores de tipo binario. Por ejemplo, el cero significa que no se encontraron errores
4. Conclusiones.
Para terminar, se pudo completar con el objetivo principal de esta consulta, logrando
obtener la información necesaria para el uso de algunas funciones tanto en
programación orientada a objetos, así como también en la programación procedural o
también conocida como programación en procedimientos. Cabe recalcar que cada
función cumple con una funcionalidad distinta para la que sea usada. Por ejemplo, si
se necesita hacer una consulta SQL la sintaxis de la orientadas a objetos es muy
distinta a la procedimental.
Por otra parte, se pudo aprender algunas sintaxis que se desconocían, por ejemplo,
bind_result que su función consiste en vincular las variables a una sentencia SQL para
el almacenamiento de resultados siendo útil en proyectos que se envíen en el
transcurso del semestre. De la igual manera, tiene sintaxis diferentes para los dos tipos
de paradigmas de programación que son la orientada a objetos y la procedimental.
Finalmente, gracias a la investigación realizada nos pudimos dar cuenta el
funcionamiento, la sintaxis, parámetros y sus valores de retorno que cada una de las
funciones investigadas anteriormente contienen. Donde nos damos cuenta que no es lo
mismo colocar parámetros en una sintaxis hecha en programación orientada a objetos
a una programación procedural.
5. Recomendaciones.
Recordar, que algunas funciones de consultas SQL no se deben de poner el punto y
coma al final como normalmente se haría en una consulta de base de datos.
Recordar las funciones que logran cerrar la base de datos, las sentencias de base de
datos o incluso las conexiones.
6. Bibliografía
Sirkin, J. (16 de 5 de 2019). ComputerWekkly. Obtenido de
[Link]
Lenguaje-de-consultas-estructuradas#:~ PHP: mysqli_stmt::prepare - Manual. (n.d.).
[Link]
:text=SQL%20(Structured%20Query%20Language%20o%20Lenguaje%20de%20consultas
%20estructuradas),-Comparta%20este%20%C3%ADtem&text=El%20lenguaje%
por: Mehdi Achour, Betz, F., Dovgal, A., Lopes, N., Magnusson, H., Richter, G., Seguy, D.,
Vrana, J., por: ¿Quieres ayudarnos a traducir? Ponte en contacto con:
seros[arroba][Link], Traduciendo desde Dic-2009. Estado: 80% completo y al día.,
Lista de encargados del mantenimiento y traducción por número de ficheros:, 1. Pedro
Antonio Gil Rodríguez 2. Andrés García 3. Yago Ferrer 4. Jesús Ruiz-Ayúcar
Vázquez 5. Juan Pablo Berdejo 6. Alexander Garzon 7. Jesús Ruiz García 8. Marta
Regina Cano Jiménez 9. Leonardo Boshell 10. Francisco José Naranjo Abad 11. Jesús
Rafael Cova Huerta 12. Jorge Eduardo Olaya P. 13. Edwin Cartagena Hdez. 14. Jesús
Díez 15. Diego Agulló Falcó 16. Ernesto Mediavilla del Río 17. Carlos Hernández
Afan de Ribera 18. Waldo Malqui Silva 19. Braian Iván Monnier 20. José Mercedes
Venegas Acevedo, & Más. . ., M. Y. (n.d.). PHP: Manual de PHP - Manual.
[Link]
7. Anexos.