Latest web development tutorials
×

PHP curso

PHP curso PHP breve introducción PHP instalar PHP gramática PHP variable PHP echo/print PHP Tipos de datos PHP constante PHP cadena PHP operadores PHP If...Else PHP Switch PHP formación PHP Ordenación de un conjunto PHP superglobals PHP While circulación PHP For circulación PHP función PHP Las variables mágicas PHP Los espacios de nombres PHP Orientado a Objetos

PHP formulario

PHP formulario PHP autenticación de formularios PHP formulario - Los campos necesarios PHP formulario - correo electrónico de verificación y la URL PHP instancia completa formulario PHP $_GET variable PHP $_POST variable

PHP Tutorial avanzado

PHP Las matrices multidimensionales PHP fecha PHP contener PHP expediente PHP Cargar archivo PHP Cookie PHP Session PHP E-mail PHP seguridad E-mail PHP Error PHP Exception PHP filtro PHP filtro avanzado PHP JSON

PHP 7 nuevas características

PHP 7 nuevas características

PHP base de datos

PHP MySQL breve introducción PHP MySQL conexión PHP MySQL La creación de una base de datos PHP MySQL Crear una tabla de datos PHP MySQL insertar datos PHP MySQL Insertar datos múltiples PHP MySQL Sentencias preparadas PHP MySQL leer datos PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX breve introducción AJAX PHP AJAX base de datos AJAX XML AJAX búsqueda en tiempo real AJAX RSS Reader AJAX voto

PHP Manual de referencia

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Procesamiento de imágenes PHP RESTful

PHP MySQL insertar datos múltiples

Utilice MySQLi y MySQL DOP para insertar datos múltiples

mysqli_multi_query función () se utiliza para ejecutar varias instrucciones SQL.

Los siguientes ejemplos son para "MyGuests" mesa agregó tres nuevos registros:

Ejemplos (MySQLi - Orientado a Objetos)

<? Php
$ Nombredeservidor = "localhost";
$ Nombre de usuario = "nombre de usuario";
$ Contraseña = "contraseña";
$ DBName = "myDB";

// Crear vínculo
$ Conn = new mysqli ($ nombre de servidor, $ usuario, $ password, $ nombredb);
// Comprobar enlaces
if ($ conn-> connect_error) {
die ( "Error de conexión:" $ conn-> connect_error.);
}

$ Sql ​​= "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'John', 'Doe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'María', 'Moe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'Julie', 'Dooley', '[email protected]') ";

if ($ conn-> consulta múltiple ($ sql) === TRUE) {
echo "El nuevo disco está insertado correctamente";
} Else {
. Echo "Error:" $ sql "<br>" $ conn-> error; ..
}

$ Conn-> close ();
?>

nota Tenga en cuenta que cada sentencia SQL debe estar separado por un punto y coma.

Ejemplos (MySQLi - orientado al proceso)

<? Php
$ Nombredeservidor = "localhost";
$ Nombre de usuario = "nombre de usuario";
$ Contraseña = "contraseña";
$ DBName = "myDB";

// Crear vínculo
$ Conn = mysqli_connect ($ nombre de servidor, $ usuario, $ password, $ nombredb);
// Comprobar enlaces
if (! $ conn) {
die ( "Error de conexión:" mysqli_connect_error ().);
}

$ Sql ​​= "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'John', 'Doe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'María', 'Moe', '[email protected]'); ";
$ Sql. = "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'Julie', 'Dooley', '[email protected]') ";

si (mysqli_multi_query ($ conn, $ sql)) {
echo "El nuevo disco está insertado correctamente";
} Else {
. Echo "Error:" $ sql "<br>" mysqli_error ($ conn); ..
}

mysqli_close ($ conn);
?>


Los ejemplos de (DOP)

<? Php
$ Nombredeservidor = "localhost";
$ Nombre de usuario = "nombre de usuario";
$ Contraseña = "contraseña";
$ DBName = "myDBPDO";

try {
$ Conn = new PDO ( "mysql: host = $ nombre de servidor; dbname = $ dbname", $ usuario, $ password);
// Establecer el modo de error DOP a excepción
$ Conn-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);

// Iniciar transacción
$ Conn-> beginTransaction ();
// Instrucción SQL
$ Conn-> exec ( "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'John', 'Doe', '[email protected]') ");
$ Conn-> exec ( "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'María', 'Moe', '[email protected]') ");
$ Conn-> exec ( "INSERT INTO MyGuests (nombre, apellido, correo electrónico)
VALUES ( 'Julie', 'Dooley', '[email protected]') ");

// Confirmar la transacción
$ Conn-> commit ();
echo "El nuevo disco está insertado correctamente";
}
captura (PDOException $ e)
{
// Si la reversión falla
$ Conn-> rollback ();
.. Echo $ sql "<br>" $ e-> getMessage ();
}

$ Conn = null;
?>



Use declaraciones preparadas

extensión mysqli proporciona una segunda forma de insertar declaraciones.

Preparamos estados y parámetros ligados.

extensión mysql puede transmitir datos sin una declaración o una consulta a la base de datos mysql. Puede asociarse o variables "bind" a las columnas.

Ejemplos (MySQLi utilizando declaraciones preparadas)

<? Php
$ Nombredeservidor = "localhost";
$ Nombre de usuario = "nombre de usuario";
$ Contraseña = "contraseña";
$ DBName = "myDB";

// Crear conexión
$ Conn = new mysqli ($ nombre de servidor, $ usuario, $ password, $ nombredb);
// La conexión de prueba
if ($ conn-> connect_error) {
die ( "Error de conexión:" $ conn-> connect_error.);
} Else {
$ Sql ​​= "INSERT INTO VALORES MyGuests (,, ???)";

// Para mysqli_stmt_prepare) objetos Statement (inicialización
$ Stmt = mysqli_stmt_init ($ conn);

// Declaración preparada
si (mysqli_stmt_prepare ($ stmt, $ sql)) {
// parámetros Bind
mysqli_stmt_bind_param ($ stmt, 'sss', $ apellido, apellido $, $ correo electrónico);

// establecer parámetros y realizar
$ Nombre = 'John';
Apellido $ = 'Doe';
$ Email = '[email protected]';
mysqli_stmt_execute ($ stmt);

$ Nombre = 'María';
Apellido del $ = 'Moe';
$ Email = '[email protected]';
mysqli_stmt_execute ($ stmt);

$ Nombre = 'Julie';
Apellido del $ = 'Dooley';
$ Email = '[email protected]';
mysqli_stmt_execute ($ stmt);
}
}
?>

Podemos ver en el ejemplo anterior usando un sistema modular para tratar con el problema. Podemos crear un bloque de código para facilitar la lectura y la gestión.

Nota parámetros ligados. Veamos mysqli_stmt_bind_param () Código:

mysqli_stmt_bind_param($stmt, 'sss', $firstname, $lastname, $email);

Los argumentos de la unión a una consulta y pasar parámetros a la base de datos. El segundo parámetro es "sss". La siguiente lista muestra el tipo del parámetro. s personaje le dice a mysql argumento es una cadena.

Puede ser los cuatro parámetros siguientes:

  • i - número entero
  • d - de doble precisión número de coma flotante
  • s - la cuerda
  • b - un valor booleano

Cada tipo de parámetro debe especificarse para garantizar la seguridad de datos. Por tipo de juicio puede reducir el riesgo de vulnerabilidad de inyección SQL.