Foros del Web » Programando para Internet » PHP »

Subir imagen mediante PHP

Estas en el tema de Subir imagen mediante PHP en el foro de PHP en Foros del Web. Bueno les cuento brevemente, ahora estoy en desarrollo de un script para noticias... pero lo quiero hacer completamente todo yo.... ahora que me estoy interesando ...
  #1 (permalink)  
Antiguo 03/05/2008, 21:17
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Subir imagen mediante PHP

Bueno les cuento brevemente, ahora estoy en desarrollo de un script para noticias... pero lo quiero hacer completamente todo yo.... ahora que me estoy interesando mucho por el PHP y esto por que creo que ni el mas configurable llenara mis espectativas...

Se trata de esto:

Un campo oculto para id con auto_increment este lo utlizare para luego listar con orden..

otro campo para el titulo de la noticia varchar de 120 caracteres

otro mas para un "resumen" este es un TEXT de 999 caracteres
PERO aki es donde entra mi duda... en este campo quiero hacer dos cosas una es subir el encabezado de la noticia como tipo resumen pero quiero tambien que me de la opcion para upload de archivo para subir una imagen representativa de la nota... alguien sabe como puedo hacer un sistema upload?
Nota: quiero que al pedir los resultados PHP la imagen que subi se meta dentro de la celda resumen..


a y por ultimo el campo de contenido es donde ira la nota completa el texto completo de mi noticia.

como ven?? dificil??
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #2 (permalink)  
Antiguo 03/05/2008, 23:29
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Subir imagen mediante PHP

mmmm tu quieres que al subir la imagen tenga o no imagen alguna ?

titulo noticia

{MENU} ( que pregunte si desea insertar una imagen ?)
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #3 (permalink)  
Antiguo 04/05/2008, 00:31
Avatar de 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
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:59.