Portada » Lenguaje PHP » Insertar multiples registros ciclo while php

Insertar multiples registros ciclo while php

Insertar multiples registros ciclo while php. En este artículo veremos la inserción de datos desde otra tabla A de una base de datos a otra tabla B. Para realizar nuestro cometido en este ejemplo utilizaremos el ciclo WHILE de PHP.

Este ejemplo nace de una problemática que tuve en un desarrollo de una plataforma web para una empresa local. Básicamente se trataba de un chat que la empresa necesitaba para comunicarse entre el personal.

La idea era la siguiente si alguien escribía en el chat, todos los demás miembros del sistema podían ver en mensaje enviado. Ahora a cada personal tenía que llegarle una alerta y esa alerta no se quitaba hasta que el personal tenía que hacer clic en el mensaje.

Insertar multiples registros ciclo while php

Para lograr esto tenía que hacer una consulta de todos los usuarios del sistema e insertarlos en otra tabla llamada alertas, y si uno de ellos le daba clic a un botón, el registro de dicho usuario se marcaba en valor 1 (leído) y ya desaparecía la alerta.

Lo demás se hizo con Jquery y JavaScript.

Ahora les mostrare en este pequeño ejemplo como pude solucionar este inconveniente.

Paso #01 La conexión con la base de datos.

// creacion de conexión
$host = 'localhost'; 
$basedatos = 'basededatos'; 
$usuario= 'root'; 
$contrasena= 'root';
$conn = new mysqli($host, $usuario, $contrasena, $basedatos);
// Check connection
if ($conn->connect_error) {
    die("Conexión fallida: " . $conn->connect_error);
}

Paso #02 Realizar la consulta en la tabla usuarios.

Realizamos una consulta de una tabla externa para obtener datos para insertarlos dinámicamente con otros datos, ya sean del método POST y/o GET mediante el ciclo while y php.

Aquí tenemos un ejemplo de consulta si es que queremos excluir a alguien en los resultados para después insertarlos en otra tabla.

$sql = "select * from login where nombre !='carlos'";
$result = $conn->query($sql);

Paso #03 Usando el ciclo WHILE.

Código del ciclo while para insertar registros.

$index = 1;
while($row = mysqli_fetch_array($result)){
$valor = $row["nombre"];
$valor2 = $row["apellido"];

$insertsql= "insert into lista (`dato1`,`dato2`)values ('$valor', now())";
// mysql_query($insertsql);
 $conn->query($insertsql);
 $index++;
 }

Paso #04 Verificar el ingreso de datos y cierre de conexión.

Mensaje de respuesta de MySQL si los datos han sido insertados correctamente y posteriormente cerrar la conexión con el servidor.

if ($insertsql == TRUE) {
    echo "Nuevos registros ingresados correctamente";
} else {
    echo "Error: " . $insertsql . "<br>" . $conn->error;
}

$conn->close();
Código completo del articulo.
<?php
// creacion de conexión
$host = 'localhost'; 
$basedatos = 'basedatos'; 
$usuario= 'root'; 
$contrasena= 'root';
$conn = new mysqli($host, $usuario, $contrasena, $basedatos);
// Check connection
if ($conn->connect_error) {
    die("Conexión fallida: " . $conn->connect_error);
}

$sql = "select * from login where nombre !='carlos'";
$result = $conn->query($sql);

$index = 1;
while($row = mysqli_fetch_array($result)){
$valor = $row["nombre"];
$valor2 = $row["apellido"];

$insertsql= "insert into lista (`dato1`,`dato2`)values ('$valor', now())";
// mysql_query($insertsql);
 $conn->query($insertsql);
 $index++;
 }
 
if ($insertsql == TRUE) {
    echo "Nuevos registros ingresados correctamente";
} else {
    echo "Error: " . $insertsql . "<br>" . $conn->error;
}

$conn->close();

?>

  </body>
  
</html>

Espero que esta breve explicacion les sirva bastante, gracias por su visita.

Insertar multiples registros
Insertar multiples registros

Referencia

Insert Into PHP

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Scroll al inicio
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Privacidad