Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/03/2013, 13:51
daroo
 
Fecha de Ingreso: febrero-2012
Ubicación: Buenos Aires
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Exclamación Galeria de imagenes manejada por php + mysql

Buenas tardes gente, les hago una consulta, hace unos dias ya que estoy intentando solucionar esto pero realmente no puedo asi que por tal motivo recurro a ustedes.

hice un administrador para una galeria de imagenes las cuales se suben a mysql utilizando el formato LONGBLOB la cual tiene los campos:

num_ident, imagen, nombre, tamano, formato.

num_ident con auto increment y imagen con longblob

a su vez genere otra tabla la cual lleva

num_ident. nombre, descripcion.

al cargar las imagenes no tengo ningun inconveniente, el problema viene al querer modificar las imagenes ya sea reescribir la existente, modificar el nombre, o la descripcion

les dejo los dos codigos a ver si alguien me puede ayudar.

Formulario para la modificacion de las imagenes:

Código PHP:
<?php
    
include("conexion.php");
    
$consulta=mysql_query("SELECT* FROM descripcion_fotos WHERE num_ident"$conectar);
    
$modificar=mysql_fetch_array($consulta);
      
?>
  <form action="foto_modificada.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
      <p>Código:<br />
        <label>
          <input name="codigo" type="text" class="formulario" id="codigo" value="<?php echo $modificar['num_ident']; ?>" readonly />
        </label>
      </p>
      <p>Nombre de la foto:<br />
        <label>
          <input name="nombre" type="text" class="formulario" id="nombre" value="<?php echo $modificar['nombre']; ?>" size="45" />
        </label>
      </p>
      <p>Descripcion:<br />
        <label>
          <textarea name="descripcion" cols="45" rows="5" class="formulario" id="descripcion"><?php echo $modificar['descripcion']; ?></textarea>
        </label>
      </p>
     <p>        <label>
          <span class="texto_chico">*el límite de tamaño para las imágenes es de 65kb
          </span>
          <input name="foto" type="file" class="formulario" id="foto" />
          <input name="lim_tamano" type="hidden" id="lim_tamano" value="650000" />
        </label></p> 
      <p>
        <label>
          <input type="submit" name="button" id="button" value="Modificar" />
        </label>
      </p>
</form>
hasta ahi funciona correctamente ya que me trae el numero de la imagen, el nombre y la descripcion. el problema es al modificarlo.

foto_modificada.php:

Código PHP:
    <?php
      $nombre
=$_POST['nombre'];
    
$descripcion=$_POST['descripcion'];
    
$foto_name$_FILES['foto']['name'];
    
$foto_size$_FILES['foto']['size'];
    
$foto_type=  $_FILES['foto']['type'];
    
$foto_temporal$_FILES['foto']['tmp_name'];
    
$lim_tamano$_POST['lim_tamano'];
    
    if (
$foto_type=="image/x-png" OR $foto_type=="image/png"){
 
$extension="image/png";
 }
if (
$foto_type=="image/pjpeg" OR $foto_type=="image/jpeg"){
 
$extension="image/jpeg";
 }
if (
$foto_type=="image/gif" OR $foto_type=="image/gif"){
 
$extension="image/gif";
 }
 
 if (
$foto_name != "" AND $foto_size != 0
                           
AND $nombre !='' AND
                        
$foto_size<=$lim_tamano AND $extension !=''){
 
 
$f1fopen($foto_temporal,"rb");
 
$foto_reconvertida fread($f1$foto_size);
 
$foto_reconvertida=addslashes($foto_reconvertida);
    
    include (
"conexion.php");
    
    
$meter="UPDATE fotos SET ('$foto_reconvertida','$nombre', $foto_size, '$extension' WHERE num_ident)";
    
$cargar_producto=mysql_query("UPDATE descripcion_fotos SET nombre, descripcion WHERE num_ident)"$conectar);
    if (
mysql_query($meter,$conectar)){
        
    echo (
"<p>La foto se agregó correctamente</p>");
        }else{
        echo (
"Ha habido un error al guardar la foto");
    }
}else{
    echo 
"<h2>No ha podido transferirse el fichero</h2>";
 }
    
  
?>
al presionar modificar me devuelve siempre "Ha habido un error al guardar la foto"

tambien he probado de modificar

Código PHP:
$meter="UPDATE fotos SET ('$foto_reconvertida','$nombre', $foto_size, '$extension' WHERE num_ident)";
    
$cargar_producto=mysql_query("UPDATE descripcion_fotos SET nombre, descripcion WHERE num_ident)"$conectar);
    if (
mysql_query($meter,$conectar)) 
por

Código PHP:
$meter=mysql_query("UPDATE fotos SET imagen($foto_reconvertida', $foto_size, '$extension') '$nombre' WHERE num_ident)"$conectar);
    
$cargar_producto=mysql_query("UPDATE descripcion_fotos SET nombre, descripcion WHERE num_ident)"$conectar);
    if (
mysql_query($meter,$conectar)) 
pasa exactamente lo mismo

si alguien me puede dar una mano se lo agradeceria

desde ya muchas gracias!