Hola a todos! Estoy importando un archivo .csv con php a una tabla de mi base. La tabla tiene 4 columnas (el id_linea es un autoincrement y no está afectado y la columna relacion no existe en el archivo .csv):
tabla LINEAS
Código:
id_linea | desc_linea | relacion | cod_linea
El código php que utilizo es este y funciona perfecto:
Código PHP:
$row = 1;
$fp = fopen ('productos.csv','r');
while ($data = fgetcsv ($fp, 1000, ";"))
{
$num = count ($data);
print " <br>";
$row++;
echo "$row- ".$data[4].$data[3];
foreach ($data as $pos=>$dato) {
$data[$pos] = trim($dato);
}
if (!in_array($data[3],$ids)) {
$ids[] = $data[3];
$insertar="INSERT INTO lineas (desc_linea,cod_linea) VALUES ('$data[4]','$data[3]')";
mysql_query($insertar);
}
}
fclose ($fp);
Las columnas que importo desde el archivo csv son todas
MENOS la columna
RELACION.
La columna
RELACION debería cargar el
id_categoria de la tabla
CATEGORIA. De esta manera funcionaría un buscador que armé con tablas relacionadas.
tabla CATEGORIA
Código:
id_categoria desc_categoria cod_categoria
1 Abrazaderas ABR
2 Garef GAR
3 Antenas ANT
La RELACION entre tablas funciona con la columna RELACION de la tabla LINEAS y el ID de la tabla CATEGORIAS
Y el resultado final debería quedar asi:
tabla LINEAS
Código:
id_linea | desc_linea | relacion | cod_linea
1 | Banda Mini | 1 | ABR01
2 | Banda Standard | 1 | ABR02
3 | Banda Reforzada | 1 | ABR03
4 | Reguladores A | 2 | GAR01
5 | Reguladores B | 2 | GAR02
6 | Antenas A | 3 | ANT01
7 | Antenas B | 3 | ANT02
.......
Por ahí, lo que se podría hacer es utilizar las letras de la columna cod_linea (tabla lineas) y compararlas con las 3 letras de cod_categoria (tabla categorias) ya que no existen 2 categorias iguales... y de ahí colocarle el id_categoria en la columna RELACION y así estaría completo... pero, ¿cómo hacerlo?
¿Alguna sugerencia de como colocar el valor correspondiente a la columna RELACION de la tabla LINEAS?
Perdon si está muy complicado pero traté de explicarlo lo mejor posible.
Saludos y mil gracias.
Marx.