Foros del Web » Programando para Internet » PHP »

Un problema...

Estas en el tema de Un problema... en el foro de PHP en Foros del Web. Estoy intentando parsear un TXT para pasar datos a mysql... este es el codigo <? // variables $dbhost = "localhost"; $dbusuario = "root"; $dbcontras = ...
  #1 (permalink)  
Antiguo 24/11/2002, 13:53
 
Fecha de Ingreso: noviembre-2002
Mensajes: 4
Antigüedad: 15 años
Puntos: 0
Un problema...

Estoy intentando parsear un TXT para pasar datos a mysql... este es el codigo


<?
// variables
$dbhost = "localhost";
$dbusuario = "root";
$dbcontras = "";
$db = "catalog";
//
$conexion = mysql_connect($dbhost, $dbusuario. $dbcontras);
mysql_select_db($db, $conexion);
$datos = file("t.txt");
$total = count($datos);

for ($i=0;$i<$total;$i++) {
list($code, $category, $description, $brand, $model, $total_stock, $available, $sales, $mesure, $warranty, $condition,$venta, $weight) = split("/t", $datos[$i]);
$grabar = mysql_query("INSERT INTO products(products_description, products_name, products_quantity, products_model, products_price, products_weight, products_date_added) VALUES ($description, $available, $model, $venta, $weight, DATE)", $conexion);
}
echo "terminado";
mysql_close($conexion);
?>

Sin embargo, cuando lo ejecuto me da el siguiente error:
Notice: Undefined offset: 12 in
easyhouston.com\prueba2.php on line 14

El mensaje es repetitivo cambiando unicamente el numero que viene despues de la palabra Offset.

Que estoy haciendo mal?

Gracias por adelantado
  #2 (permalink)  
Antiguo 24/11/2002, 14:53
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

No estas haciendo nada "mal". Es un Notice, no un error. Es el aviso de que algo puede no estar haciendose bien. En tu caso, creo que tiene que ver con el list(). El Offset al que se refiere debe ser el numero de elemento. ¿ Has comprobado que lo devuelto por el split() sea un array de 13 elementos (los campos que has puesto en el list()) ? Si falta alguno esa es la causa del Notice.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 24/11/2002, 18:18
 
Fecha de Ingreso: noviembre-2002
Mensajes: 4
Antigüedad: 15 años
Puntos: 0
Pues revise y parece todo correcto. QUe mas podria ser?
  #4 (permalink)  
Antiguo 25/11/2002, 14:31
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Pues no se. Por cierto, ¿ el fichero estan separados los campos por tabulador ? Es que en el split has puesto /t cuando deberia ser \t , aunque tambien puede ser que haya sido un error al trascribirlo al foro.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:34.