• Viernes 8 de Noviembre de 2024, 14:26

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - ross_mf

Páginas: [1]
1
PHP / Re: Uso De Type=file
« en: Lunes 19 de Marzo de 2007, 18:31 »
Hola....... :comp:
Bueno gracuas Alterum, efectivamente llamar  require ("../db_connect.php"); dentro de mi funcion printimage.php, estaba ocacionando el problema....
Sin embargo ya lo resolvi, asi que gracias a todos los que se tomaron el tiempo de leer el problema de uso de type=file.....

2
PHP / Re: Uso De Type=file
« en: Lunes 12 de Marzo de 2007, 23:27 »
Gracias por la ayuda, lo revise y en verdad lo manera de una manera facil...
Sin embargo revisando mi codigo lo arregle parcialmente primero puse la linea:
Código: Text
  1.  
  2. $nombre = $HTTP_POST_FILES["userfile"]["name"];
  3.  
  4.  
antes de:
Código: Text
  1.  
  2. if ( !empty ($nombre) )
  3.  
  4.  
   
y cambie $usefile, por $nombre.
con eso ingresa y almacena en mi base de datos.
Pero la funcion que uso para mostrar el archivo, no cumple su objetivo:
Código: Text
  1.  
  2. print "<img src='printimage.php?id=".$id."' border='0'>";
  3.  
  4.  
El codigo de printimage.php es:
Código: Text
  1.  
  2. require ("../db_connect.php");
  3. $MainSQL = "SELECT Imagen,Tipo_img,Nombre_img FROM fotos where Num_img = '$id'";
  4. $res = mysql_query($MainSQL);
  5. $row = mysql_fetch_array($res);
  6. $data = $row[0];
  7. $tipo = $row[1];
  8. $name = $row[2];
  9. header("Content-Type: ".$tipo."\n");
  10. header("Content-Transfer-Encoding: binary\n");
  11. header("Content-length: ".strlen($data)."\n");
  12. header("Content-Disposition: attachment; filename=$name");
  13. print $data;
  14. require ("../db_dconnect.php");
  15. exit;
  16.  
  17.  
No logro que muestre la imagen, aunque no sale ningun error de tipo cabezera,  pero es como sino encontrara la imagen.

Se agredece de antemano cualquier ayuda o sugerencia :comp:

3
PHP / Uso De Type=file
« en: Sábado 10 de Marzo de 2007, 16:59 »
:unsure: Hola..... no se si me pueden ayudar con el siguiente problema:
No puedo hacer que se almacene en una base de datos un archivo cualquiera, para dejarme entender mejor les muestro segmentos del codigo que he realizado:
CODE: del formulario
<form action="AReg_nuevo.php" method="post" enctype="multipart/form-data">
.............
........
<input name='userfile' type=file class="campo">
<textarea name="txtdesc" cols="30" rows="3" class="campo">Ninguna</textarea>
........
.........
</form>

CODE: de "AReg_nuevo.php"
...........
........
if ( !empty ($userfile) )   
{    $nombre = $_FILES["userfile"]["name"];
   $extensiones = array("jpg","jpeg","gif","png","bmp","ico");
   $var = explode(".","$nombre");
   $num = count($extensiones);
   $valor = $num-1;
   $admitido = false;
   for($i=0; $i<=$valor; $i++)
   {     if($extensiones[$i] == $var[1])
      {   $admitido=true;//es una extension valida
             break;
       }
   }
   if (!(empty($admitido))){
      echo "<meta http-equiv=\"refresh\" content=\"2; URL=AReg_nuevo0.php?cod=$cod&miembro=$miembro\">
      <span class='t_fecha'>No especificaste una imagen válida ( jpg, jpeg, gif, bmp, png, ico). Elija una imagen.</span> ";
      exit();
   }
   $data = "";
   $redir = "<meta http-equiv=\"refresh\" content=\"2; URL=AReg_nuevo0.php?cod=$cod&miembro=$miembro\">ERROR EN ALMACENAMIEMTO: INTENTE DE NUEVO";
   //recoger algunos datos para almecenarlos
   $userfile = $_FILES['userfile']['tmp_name'];
   $tamano=$_FILES["userfile"]["size"];
   if ($tamano==0){
      print "El tamaño de la imagen es 0 <br>". $redir;
      exit();
   }
   $tipo=$_FILES["userfile"]["type"];
   $descripcion=$_REQUEST["txtdesc"];
   //abrir el archivo y guardarlo en $fp= file pointer
   $fp = fopen($userfile, "rb");
   while(!feof($fp))
   {
      $data .= fread($fp, 1024);
   }
   fclose($fp);

   $data = addslashes($data);
   $data = addcslashes($data, "\0");
       ............
       ........
require '../db_connect.php';
   $sql = "INSERT INTO `fotos` (Cod_Ing,Tamano_img,Nombre_img,Tipo_img,Imagen,Descripcion_img)
   VALUES ('".$cod."','".$tamano."','".$nombre."','".$tipo."','".$data."','".$descripcion."')";
   $res=mysql_query($sql)or die (print $redir. mysql_error());
   $id=mysql_insert_id();
require '../db_dconnect.php';
       ........
       ............
       print "<img src='printimage.php?id=". $id. "' border='0' class=foto>";
}
........
...........

//************************
Y bueno, el problema es que en "AReg_nuevo.php" el valor de $userfile es siempre nulo (lo que no sucede con las demás variables), aclaro de que estoy utilizando:
extract($_POST,EXTR_SKIP);
aunque he realizado pruebas tambien con:
$userfile = trim($_POST['userfile']);
Por último:
En lo segmentos que falta estoy utilizando otros componentes de formularios para leer datos personales como nombre, direccion, fono, etc.
Estos valores pasan normalmente a "AReg_nuevo.php"  y se almacenan en una base de datos, pero no sucede lo mismo con el componente de tipo file.
NOTA: Funciona bien cuando trabajo en mi pc, pero no asi cuando lo subo a Internet.

Páginas: [1]