Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/05/2008, 00:31
Avatar de Monimo
Monimo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 742
Antigüedad: 16 años, 5 meses
Puntos: 69
Re: Subir imagen mediante PHP

Bueno mira lo que yo hago es subir la imagen mediante php a la base de datos pero convirtiendola en texto con el base64_encode, este codifica tu imagen en texto, t recomiendo que separes el campo tengas uno para el encabezado otro para l aimagen y uno para la nota completa para que al subir la imagen comotexto sepas exactamente dodne encontrarla y poder decodificarla al sacarla
yo lo hago asi:

Código PHP:
$file="./archivos_temporales/".basename($_FILES['userfile_va']['name']); 
// la variable $_FILES se utiliza para  inputs del tipo : <input type="file" name="userfile_va" /> dentro de forms : <form method="post" action="Upload.php" enctype="multipart/form-data">
    
if(  $_FILES['userfile_va']['size']< 4566235254 && move_uploaded_file($_FILES['userfile_va']['tmp_name'],$file))
    {
    
$name="";
     
$name=$_FILES['userfile_va']['name'];
    
//echo $name;

    
echo "alert('archivo enviado')";
//hasta aquí solo los subo a una crapeta temporal pero me quedo con el nombre del archivo para convertir la imagen 
    
    
$handle fopen($file"rb");
    
$img fread($handlefilesize($file));
     
fclose($handle);
//die($img);

      
$img base64_encode($img); // con el nombre y el tamaño del archivo ya puedo convertirlo a textocon esta funcion
      
}


if(
$name)
{


$query="insert into Tabla(Imagen, encabezado, informacion)  values ('".$img."',".$encabezado."'".$info."')" ;
        echo 
$query;
        
$insercion=mysql_query($query,$conectar);

        echo 
mysql_error();
        if(
$insercion)
            echo 
"INSERTADO EN LA BD";
        else
            echo 
"ERROR";    

Espero que le entiendas y que te haya servido.

cuando quieras mostrar la imagen solo debes usar la funcion
Código PHP:
base64_decode("la cadena comtenida en la columna de imagen"); 
funciona para PHP4 Y PHP5

Última edición por Monimo; 04/05/2008 a las 00:35 Razón: añadir mas informacion