Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/11/2003, 13:39
Avatar de indiestudio
indiestudio
 
Fecha de Ingreso: julio-2003
Mensajes: 163
Antigüedad: 20 años, 9 meses
Puntos: 1
Un buen Script para almacenes

Tengo este Script:

<?php
//Crear una tabla con 3 campos (referencia,nombre,pvp)
//Script para generar/actualizar una tabla en SQL desde un fichero CSV
require("conexion.php");
$fp = fopen ("LIBRO1.CSV","r");// abre el archivo CSV
//comprueba si la tabla esta vacia
$sql ="SELECT COUNT(*) as total FROM almacen" ;
$resultado =mysql_query ($sql,$conex);

if(mysql_result ($resultado ,0,"total" )>0) //Si la tabla NO esta vacia, comprueba las referencias y las actualiza. Ademas inserta nuevos productos
{

while ($data = fgetcsv ($fp, 1000, ","))
{
print " <br>";
$sql="SELECT * TO almacen WHERE referencia= ".$data[0];
$consulta=mysql_query($sql,$conex);
$refer= mysql_fetch_array($consulta);
if(($refer["nombre"]!=$data[1]) or ($refer["pvp"]!=$data[2]))//comprueba si los datos anteriores son iguales a los que estan por insertar
{
$actualizar="UPDATE almacen SET nombre='$data[1]', pvp='$data[2]' WHERE referencia=".$refer["referencia"];
mysql_query($actualizar,$conex);
echo'ACT';
}
else
{
echo "Referencia:<b><i> ".$data[0]."</i></b> Articulo:<b><i> ".$data[1]."</i></b> PVP: <b><i>".$data[2]."</i></b>";
$insertar="INSERT INTO almacen (referencia,nombre,pvp) VALUES ('$data[0]','$data[1]','$data[2]')";
mysql_query($insertar,$conex);
}
}
fclose ($fp);
}
else //Si la tabla está vacia inserta todo el CSV
{
while ($data = fgetcsv ($fp, 1000, ","))
{
print " <br>";
echo "Referencia:<b><i> ".$data[0]."</i></b> Articulo:<b><i> ".$data[1]."</i></b> PVP: <b><i>".$data[2]."</i></b>";
$insertar="INSERT INTO almacen (referencia,nombre,pvp) VALUES ('$data[0]','$data[1]','$data[2]')";
mysql_query($insertar);
}
fclose ($fp);
}
?>