PHP - Despues de un tiempo no puedo redimensionar fotos

 
Vista:

Despues de un tiempo no puedo redimensionar fotos

Publicado por hcpag (2 intervenciones) el 18/11/2009 12:00:22
Hola a ver si alguien me puede ayudar?

Cree un gestor de contenidos, básico para que el usuario pueda actualizar una sección de su web.
La web esta creada en flash y el formulario en php.
Primero el formulario guarda los datos en una base de datos Mysql,las imagenes se redimensionan automaticamente mediante php y gd, se genera un xml y la flash recoje los datos del xml y muestra los productos de oferta. todo funciona bien , pero al cabo de un tiempo , todo sigue funcionando menos las imagenes que no se redimensionan.
Cuando me sucede esto la unica solucion es eliminar toda la base de datos y volverla a crear logicamente volver a poner todas las ofertas.

Los scripts funcionan bien ya que si no de primeras ya me fallarian, si exporto la db, y cuando falla la importo, no me vale, tengo que eliminarla, volver a crear la tabla, la estructura y meter todos los datos desde cero.

Al final de productos.php, tengo una flash que es con la que navego por los registros de la DB y donde elimino y actualizo las ofertas (pero no las imagenes solo, solo el texto).

Vuelvo a insistir que si creo hoy la DB funciona todo correctamente y al cabo de un tiempo deja de funcionar la redimension de las imagens , pero los registros en la DB los guarda bien.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Despues de un tiempo no puedo redimensionar fot

Publicado por Diego Romero (1450 intervenciones) el 20/11/2009 00:34:20
Pregunta: ¿estás guardando la imagen dentro de la DB o solo la dirección (path) hacia la imagen?.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Despues de un tiempo no puedo redimensionar fot

Publicado por hcpag (2 intervenciones) el 20/11/2009 10:57:16
Gracias por tu aporte.
El fallo era este:

$lastid=mysql_insert_id();
$path.=$lastid . "-" . $nombre;
$ql = "SELECT MAX(id) FROM ofer";
$resultado = mysql_query($ql);
$max_id=mysql_result($resultado,0);
$path2.= $max_id . "g-" . $nombre;

Ya que al ser un valor autonumerico siempre coincide $lastid con $max_id, aunque seria más correcto así:

$lastid=mysql_insert_id();
$path.=$lastid . "-" . $nombre;
$path2.= $lastid . "g-" . $nombre;

Empece a darle vueltas y claro como era un valor automunerico coincidia, el problema se presentaba cuando borraba una oferta, entonces comprobe que seguia siendo correcto, pero lo que hiciera mal era en el archivo redimensionar.php aplicar la misma logica para obtener la ruta de las imagenes porque no es un valor numerico, sino texto.

$sql = "SELECT MAX(path) FROM ofer";
$resultado = mysql_query($sql);
$max_id=mysql_result($resultado,0);
$origen= $max_id;

$sql2 = "SELECT MAX(path2) FROM ofer";
$resultado2 = mysql_query($sql2);
$max_id2=mysql_result($resultado2,0);
$origen2= $max_id2;

Lo correcto seria así, ya que de esta forma , si me devuelve el path y el path2 de la ultima id:

$sql = "SELECT path FROM ofer ORDER BY id DESC";
$resultado = mysql_query($sql);
$max_id=mysql_result($resultado,0);
$origen= $max_id;

$sql2 = "SELECT path2 FROM ofer ORDER BY id DESC";
$resultado2 = mysql_query($sql2);
$max_id2=mysql_result($resultado2,0);
$origen2= $max_id2;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar