Foros del Web » Programando para Internet » PHP »

Problema subir fotos

Estas en el tema de Problema subir fotos en el foro de PHP en Foros del Web. Hola a todos! Tengo un problema desde hace tres dias con el codigo para subir imagenes. He revisado toda la informacion disponible en internet respecto ...
  #1 (permalink)  
Antiguo 30/09/2007, 13:00
Avatar de markel  
Fecha de Ingreso: septiembre-2007
Mensajes: 17
Antigüedad: 16 años, 7 meses
Puntos: 0
Problema subir fotos

Hola a todos!
Tengo un problema desde hace tres dias con el codigo para subir imagenes. He revisado toda la informacion disponible en internet respecto a este tema pero ninguna me ha servido. El problema lo tengo con una variable que recibo desde una pagina de html. El codigo de esta pagina es la siguiente:

crear_galeria.html

<html>
<head>
<title>NUEVA GALERIA</title>
</head>
<body background="../crepusculo.bmp">
<form name="from1" method="post" enctype="multipart/form-data" id="form1" action="crear_galeria1.php">
<form name="form1" method="post" id="form1" action="crear_galeria1.php">
<p>&nbsp;</p><p>&nbsp;</p>
<center><font color="#FF9900" size="+2"><b>INTRODUCE EL NOMBRE Y UNA DESCRIPCION DE LA GALERIA</b></font></center>
<p>&nbsp;</p>
<TABLE align="center">
<TR>
<TD align="left"><label><font color="#FF9900" size="3"><b>NOMBRE GALERIA:</b></font></label></TD>
<TD align="left"><input name="nombre" type="text" id="nombre"></TD>
</TR>
</TABLE>
<p>
<center><input style="color:#000099" type="submit" name="submit" value="ACEPTAR"></center>
</p>
</form>
</form>
</body>
</html>

Y el que codigo que tengo en php es la siguiente:

crear_galeria1.php

Código PHP:
<?php
    
if (isset($submit))
    {
        
$nombre_carpeta "./Galerias/$nombre";
        if(!
is_dir($nombre_carpeta))
        { 
            @
mkdir($nombre_carpeta0777);
        }
    }
?>
    <body background="../Pagina_Web/Imagenes/crepusculo.bmp">
    <form action="<? echo $PHP_SELF;?>" method="post" enctype="multipart/form-data"> 
    <input type="file" name="archivo"> 
    <p><input type="submit" value="Subir" name="confirmar"> 
    </form> 
    <? 
        
echo $nombre_carpeta;
        
$tamaño $_FILES['archivo']['size']; 
        
$tipo $_FILES['archivo']['type']; 
        if (!((
strpos($tipo"gif") || strpos($tipo"png") || strpos($tipo"jpeg") || strpos($tipo"bmp")) && ($tamaño >             640000))) 
        {
               
/* Guardar el archivo */ 
            
$nombre_foto=$_FILES['archivo']['name'];
            
$destino=$nombre_carpeta."/".$nombre_foto
            if(
move_uploaded_file($_FILES['archivo']['tmp_name'],$destino))
            { 
                echo 
'<br> El archivo '.$_FILES['archivo']['name']. ' ha sido guardado con exito en:'.$destino.'!'
            }
        }
?>
Mediante este codigo lo que pretendo es que me cree una carpeta en mi servidor que me sirva de alojamiento para imagenes, pero el nombre de la carpeta lo introducira el usuario, acto seguido el usuario tendra que introducir las imagenes en la carpeta creada por el, pero no consigo que la variable $nombre_carpeta me sirva para introucir la imagen en la carpeta (si me sirve para crear la carpeta).
Como puedo hacer para conseguir que funcione?
Gracias de antemano!!!Un Saludo!
  #2 (permalink)  
Antiguo 30/09/2007, 13:05
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema subir fotos

Código PHP:
$nombre_carpeta "./Galerias/$nombre"
por esto:

Código PHP:
$nombre_carpeta "./Galerias/".$nombre
  #3 (permalink)  
Antiguo 01/10/2007, 00:15
Avatar de markel  
Fecha de Ingreso: septiembre-2007
Mensajes: 17
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema subir fotos

Gracias por contestar tan rapido pero no es ese el problema que tengo, la carpeta ya me la crea, lo que no consigo es que el usuario al intentar introducir en la pagina crear_galeria1.php las fotos, las introduzca dentro de la carpeta creada con anterioridad, es decir no se donde pero tengo un problema con la variable $nombre_carpeta, no puedo usar esta variable dentro del codigo para subida de imagenes.
  #4 (permalink)  
Antiguo 01/10/2007, 00:24
Avatar de markel  
Fecha de Ingreso: septiembre-2007
Mensajes: 17
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema subir fotos

Tambien he intentado con este codigo y es como si la variable $nombre_carpeta no existiera:

Código PHP:
<?php
    
if (isset($submit))
    {
        
$nombre_carpeta "./Galerias/".$nombre;
        if(!
is_dir($nombre_carpeta))
        { 
            @
mkdir($nombre_carpeta0777);
        }
    }
?>
    <body background="../Pagina_Web/Imagenes/crepusculo.bmp">
    <form action="<? echo $PHP_SELF;?>" method="post" enctype="multipart/form-data"> 
    <input type="file" name="archivo"> 
    <p><input type="submit" value="Subir" name="confirmar"> 
    </form> 
    <? 
       
if(isset($_FILES['archivo']))
        { 
            echo 
$nombre_carpeta;
            
$tamaño $_FILES['archivo']['size']; 
               
$tipo $_FILES['archivo']['type']; 
            if (!((
strpos($tipo"gif") || strpos($tipo"png") || strpos($tipo"jpeg") || strpos($tipo"bmp")) && ($tamaño 640000))) 
            { 
                echo 
'El archivo no cumple con las caracterizticas requeridas';  
            }
            else
            { 
                
/* Guardar el archivo */ 
                
$nombre_foto=$_FILES['archivo']['name'];
                
$destino=$nombre_carpeta.$nombre_foto
                if(
move_uploaded_file($_FILES['archivo']['tmp_name'],$destino))
                { 
                    echo 
'<br> El archivo '.$_FILES['archivo']['name']. ' ha sido guardao con exito!'
                }
                else
                { 
                    echo 
'<br> Error al guardar el archivo!!!'
                } 

            } 
        } 
?>
  #5 (permalink)  
Antiguo 01/10/2007, 00:39
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Problema subir fotos

Hola markel, bienvenido a los foros :

No sé si te equivocaste al teclear o es así tu página crear_galeria.html pero tienes un formulario anidado, y eso no está permitido... revísalo y nos cuentas...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 01/10/2007, 00:48
Avatar de markel  
Fecha de Ingreso: septiembre-2007
Mensajes: 17
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema subir fotos

Hola caricatos!
La verdad es que tenia el formulario anidado en la pagina crear_galeria.html , pero ya lo he solucionado y sigo igual, ahora la pagina crear_galeria.html:

<html>
<head>
<title>NUEVA GALERIA</title>
</head>

<body background="../Pagina_Web/Imagenes/crepusculo.bmp">
<form name="from1" method="post" enctype="multipart/form-data" id="form1" action="crear_galeria1.php">
<p>&nbsp;</p><p>&nbsp;</p>
<center><font color="#FF9900" size="+2"><b>INTRODUCE EL NOMBRE Y UNA DESCRIPCION DE LA GALERIA</b></font></center>
<p>&nbsp;</p>
<TABLE align="center">
<TR>
<TD align="left"><label><font color="#FF9900" size="3"><b>NOMBRE GALERIA:</b></font></label></TD>
<TD align="left"><input name="nombre" type="text" id="nombre"></TD>
</TR>
</TABLE>
<p>
<center><input style="color:#000099" type="submit" name="submit" value="ACEPTAR"></center>
</p>
</form>
</body>
</html>

Me estoy volviendo loco , es como si la variable que envio por metodo post $nombre perdiera su valor una vez dentro del codigo de subida.
puedes echarme un cable caricatos?
  #7 (permalink)  
Antiguo 01/10/2007, 00:57
Avatar de markel  
Fecha de Ingreso: septiembre-2007
Mensajes: 17
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema subir fotos

Yo creo que una vez de usar el formulario de la pagina crear_galeria1.php:
<body background="../Pagina_Web/Imagenes/crepusculo.bmp">
<form action="<? echo $PHP_SELF;?>" method="post" enctype="multipart/form-data">
<input type="file" name="archivo">
<p><input type="submit" value="Subir" name="confirmar">
</form>

la variable $nombre_carpeta desaparece, como puedo hacer para solucionarlo?
  #8 (permalink)  
Antiguo 01/10/2007, 01:05
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Problema subir fotos

Hola:

Puedes volver a pasar en un campo oculto, o mejor en uno "readonly" el nombre de la carpeta en el formulario de inserción de fotos:

<body background="../Pagina_Web/Imagenes/crepusculo.bmp">
<form action="<? echo $PHP_SELF;?>" method="post" enctype="multipart/form-data">

<input type="file" name="archivo">
<input type="text" name="nombre" value="<?=$nombre_carpeta; ?>" readonly="readonly">
<p><input type="submit" value="Subir" name="confirmar">
</form>

Y deberías recibir ese nombre fuera de la condición (if (isset($submit)))...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 01/10/2007, 01:26
Avatar de markel  
Fecha de Ingreso: septiembre-2007
Mensajes: 17
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema subir fotos

GRACIAS caricatos!!!!!!!!!!!!
Eres un genio tio!!!!!!!!
Me has solucionado un problema que me estaba matando desde hace tres dias.
El codigo me ha quedado de la siguiente manera:

Código PHP:
<?php
    
if (isset($submit))
    {
        
$nombre_carpeta "./Galerias/".$nombre;
        if(!
is_dir($nombre_carpeta))
        { 
            @
mkdir($nombre_carpeta0777);
        }
    }
?>
    <body background="../Pagina_Web/Imagenes/crepusculo.bmp">
    <form action="<? echo $PHP_SELF;?>" method="post" enctype="multipart/form-data"> 
    <input type="file" name="archivo">
    <input type="text" name="nombre" value="<?=$nombre_carpeta?>" readonly="readonly">  
    <p><input type="submit" value="Subir" name="confirmar"> 
    </form> 
    La carpeta destino en la que se introducira la foto es: <? echo $nombre_carpeta;
       if(isset(
$_FILES['archivo']))
        { 
            
$tamaño $_FILES['archivo']['size']; 
               
$tipo $_FILES['archivo']['type']; 
            if (!((
strpos($tipo"gif") || strpos($tipo"png") || strpos($tipo"jpeg") || strpos($tipo"bmp")) && ($tamaño 640000))) 
            { 
                echo 
'El archivo no cumple con las caracterizticas requeridas';  
            }
            else
            { 
                
/* Guardar el archivo */ 
                
$nombre_foto=$_FILES['archivo']['name'];
                
$destino=$nombre."/".$nombre_foto
                if(
move_uploaded_file($_FILES['archivo']['tmp_name'],$destino))
                { 
                    echo 
'<br> El archivo '.$_FILES['archivo']['name']. ' ha sido guardao con exito!'
                }
                else
                { 
                    echo 
'<br> Error al guardar el archivo!!!'
                } 

            } 
        } 
?>
Muchas gracias y UN SALUDO!!!!!!!!
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 21:56.