Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2009, 15:16
Avatar de Enishy
Enishy
 
Fecha de Ingreso: septiembre-2007
Mensajes: 121
Antigüedad: 17 años, 2 meses
Puntos: 1
Problema con if

Hola foreros tengo otro problema y es el siguiente:

En una formulario donde capturo lo que el usuario ingresara esta parte... en donde si ya fue ingresada la imagen se mostrara caso contrario me mostrara el multiparform para el upload de una imagen

Código ingresa:
Ver original
  1. [PHP]
  2.  
  3. if(!$_SESSION['auth_1']) {
  4. $res0=mysql_query("select max(codigo_imagen) from imagen",$DB);
  5. $row0=mysql_fetch_array($res0);
  6. $img0=$row0[0];
  7. echo"
  8. <tr>
  9. <td align=\"center\"> <a href=\"#\" onClick=\"popUpWindow('view.php?codigo_imagen=$img0', 10, 10, 800, 600)\">
  10. <img src=\"view_thumbnail.php?codigo_imagen=$img0\" border=\"0\" /></a>
  11. </td>
  12. </tr>";
  13. } else {
  14. echo"      
  15. <tr>
  16. <td>
  17. <input type='file' name='archivo' size='30' style='border: 1px solid #7F9DB7;'>
  18. <input type='submit' value='Subir Imagen 1' name='enviar1'>
  19. </td>
  20. </tr>";
  21. }
  22.  
  23. [/PHP]

Aqui es donde recibo lo enviado y se realiza el insertado de la imagen lo cual no hay problema

Código compara:
Ver original
  1. [PHP]
  2. if (isset($_POST['enviar1'])){
  3. $_SESSION['auth_1'] = true;
  4. // archivo temporal (ruta y nombre).
  5. $binario_nombre_temporal=$_FILES['archivo']['tmp_name'] ;
  6. // leer del archvio temporal .. el binario subido.
  7. // "rb" para Windows .. Linux parece q con "r" sobra ...
  8. $binario_contenido = addslashes(fread(fopen($binario_nombre_temporal, "rb"), filesize($binario_nombre_temporal)));
  9. // Obtener del array FILES (superglobal) los datos del binario .. nombre, tabamo y tipo.
  10. $binario_nombre=$_FILES['archivo']['name'];
  11. $binario_peso=$_FILES['archivo']['size'];
  12. $binario_tipo=$_FILES['archivo']['type'];
  13. //Archivo Max Codigo
  14. $query_arch=mysql_query("SELECT Max(codigo_imagen) AS arch FROM imagen") or die ("Error SQL Archivo");
  15. $data_arch=mysql_fetch_array($query_arch);
  16. $max_arch=$data_arch[arch];
  17. $maxi_arch=$max_arch+1;
  18. //insertamos los datos en la BD.
  19. $consulta_insertar = "INSERT INTO imagen VALUES ('$maxi_arch', '$binario_contenido', '$binario_nombre', '$binario_peso', '$binario_tipo')";
  20. mysql_query($consulta_insertar) or die ("No se pudo insertar los datos en la base de datos.");
  21. header("location: List_ImageBotanico.php");  // si ha ido todo bien
  22. [/PHP]

Para la primera pasada por el formulario el usuario encontro el multiparform para hacer el upload pero al pasar por segunda vez el formulario aparece con una imagen ya cargada lo que es incorrecto ... pues no entiendo porque si esta esta condicion if(!$_SESSION['auth_1']) la cual debe controlar esto de mostrarme le multipartform o la imagen .... no se que mas hacer