[ Foro de SQL (y MySQL) ]

ARRAY-GRABAR

21-Jun-2017 17:05
Invitado (JORGE1945)
1 Respuestas


tengo lo siguiente, donde el array tiene 76 datos y solo sube a la base 2
     function Conectarse()
       {
  global $host, $puerto, $usuario, $contrasena, $baseDeDatos, $tabla;

if (!($link = mysqli_connect($host.":".$puerto, $usuario, $contrasena)))
        {
           echo "Error conectando a la base de datos.<br>";
           exit();
        }
        else         {
           echo "Listo, estamos conectados.<br>";
        }
        if (!mysqli_select_db($link, $baseDeDatos))
        {
           echo "Error seleccionando la base de datos.<br>";
           exit();
        }
        else
        {
           echo "Obtuvimos la base de datos $baseDeDatos sin problema.<br>";
       }
     return $link;
   }

     $link = Conectarse();  

//obtenemos el archivo .csv
$tipo = $_FILES['archivo']['type'];

$tamanio = $_FILES['archivo']['size'];

$archivotmp = $_FILES['archivo']['tmp_name'];

//cargamos el archivo
$lineas = file($archivotmp);


//inicializamos variable a 0, esto nos ayudará a indicarle que no lea la primera línea
$i=1;

//Recorremos el bucle para leer línea por línea
foreach ($lineas as $linea_num => $linea)
{

$i != 0 ;
 

  //{
   
      $datos = explode(";",$linea);
 

      //Almacenamos los datos que vamos leyendo en una variable
      $email = trim($datos[0]);
  $nombre = trim($datos[1]);
 

  $link = Conectarse();  

mysqli_query($link,"INSERT INTO $tabla (email, nombre) VALUES ('$email', '$nombre')");  
         
 
mysqli_close($link);  
 
      //guardamos en base de datos la línea leida
 // mysqli_query($link,"INSERT INTO $tabla(email,nombre) VALUES('$email','$nombre')");
 
 //mysqli_close($link);
      //cerramos condición
//  }
   
  /*Cuando pase la primera pasada se incrementará nuestro valor y a la siguiente pasada ya
  entraremos en la condición, de esta manera conseguimos que no lea la primera línea.*/
  $i++;
  //cerramos bucle
}

echo "<p><a href=index.htm>Retornar</p>\n";
?>


24-Jun-2017 16:44
Nacho Cabanes (+32)

Puedes guardar la consulta INSERT en una variable, y usar esa variable para mostrar la consulta en pantalla antes de lanzarla. Así podrás comprobar si la consulta es correcta o dónde está el problema.

(Ten en cuenta que es difícil replicar tu estructura en otro equipo, al no tener la base de datos)






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)