Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Mysql puede hacer operaciones matematicas si yo decírselo?

Estas en el tema de Mysql puede hacer operaciones matematicas si yo decírselo? en el foro de Mysql en Foros del Web. Hola, Tengo la siguiente estructura en una tabla de productos: id TEXT NOT NULL, id_foto TEXT NOT NULL id_cat INT(2) NOT NULL descripcion TEXT NOT ...
  #1 (permalink)  
Antiguo 03/06/2006, 12:47
 
Fecha de Ingreso: enero-2005
Mensajes: 66
Antigüedad: 19 años, 3 meses
Puntos: 0
Pregunta Mysql puede hacer operaciones matematicas si yo decírselo?

Hola,
Tengo la siguiente estructura en una tabla de productos:
id TEXT NOT NULL,
id_foto TEXT NOT NULL
id_cat INT(2) NOT NULL
descripcion TEXT NOT NULL


y utilizo php para insertar registros con el siguiente código:
$path="../html/ant.txt";
$fp=fopen($path,"r");

while ($linea= fgets($fp,1024))
{
$ani=explode("\t",$linea);

if(strlen($ani[0])==2)
$ani[0].=" ";
elseif(strlen($ani[0])==3)
$ani[0].=" ";

switch($ani[0])
{
case "cri ":
$cat=2;
break;

}

$ssql="INSERT INTO productos(id,id_foto,id_cat,descripcion,precio) VALUES ($ani[2],$ani[2],$cat,'$ani[4]')";

mysql_query($ssql);

}

echo 'lectura finalizada';


El txt que lee tiene la siguiente estructura:
id_cat id id_foto descripcion
cri cri 214-5 214-5 aquí va la descripcion
cri cri 3174bis 3174bis aquí va la descripcion

Pues los id con un guión detrás le resta el valor de detrás del guión ylos que tienen un bis no los mete en el registro!

He probado con cambiar el tipo de campo del id de la estructura de la tabla a VARCHAR y a TINYTEXT y a INT pero nada. Cómo puedo hacer para que aparezcan tal y como están?

Gracias
  #2 (permalink)  
Antiguo 05/06/2006, 04:12
 
Fecha de Ingreso: enero-2005
Mensajes: 66
Antigüedad: 19 años, 3 meses
Puntos: 0
De acuerdo ya encontré el error!

en INSERT TO....VALUES ($ani[2],$ani[2],$cat,'$ani[4]')";
me faltaban las comillas simples en '$ani [2]'

Sin las comillas los que tienen guión, ej: 212-4, realiza una resta, y
los que tienen bis detrás, ej: 251bis, no los lee.

un saludo a todos!
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 17:19.