Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/05/2011, 08:19
pasteles
 
Fecha de Ingreso: enero-2008
Mensajes: 49
Antigüedad: 16 años, 3 meses
Puntos: 0
Problema la subir una imagen

Una duda de codigo tonto, es php y el paso a formularios.
Tengo este formulario:
Código HTML:
<form id="login" name="login" method="post" onsubmit="" action="dar_alta.php">
			<p>Nombre*</p> <input type="text" id="nombre" name="nombre" value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'" />
			<p>Apellidos*</p><input type="text" id="apellidos" name='apellidos'  size="30" value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'" />
			<p>Direccion*</p><input type="text" name="direccion" id="direccion"  value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'" /> 
			<p>F.Nacimiento</p><input type="text" id="nac" name='nac' class="form_input_center" size="30" value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'" />
			<p>Mail*</p><input type="text" name="mail" id="mail" value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'"/>
			<p>Login*</p><input type="text" id="login" name="login" value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'" />
			<p>Password*</p><input type="text" id="password" name='password'  size="30" value="- enter your name -" onfocus="if(this.value=='- enter your name -')this.value=''" onblur="if(this.value=='')this.value='- enter your name -'"/>
			<p>Imagen</p><input name="imagen" id="imagen" type="file" size="35" />
				<input type="submit" value="insertar"  title="Pulsa aqui para enviar" />
		</form> 
Y este es el script que lo procesa:

Código PHP:
<?php
    session_start
();
    include_once(
"class/conexion.php");
    include_once(
"class/usuario.php");
    
    
//Recogemos los datos del formulario
    
$nombre $_POST["nombre"];
    
$apellidos $_POST["apellidos"];
    
$dir $_POST["direccion"];
    
$mail $_POST["mail"];
    
$login $_POST["login"];
    
$pass $_POST["password"];
    
$nac $_POST["nac"];
  
    
$max=512000;//500KB
    
$tamano $_FILES["imagen"]['size'];
    
$tipo $_FILES["imagen"]['type'];
    
$archivo $_FILES["imagen"]['name'];
    
$prefijo substr(md5(uniqid(rand())),0,6);
    if(
$_FILES['imagen']['size']<$max){
        if (
$archivo != ""){
            
// guardamos el archivo a la carpeta files
            
$destino =  "../images/".$prefijo."_".$archivo;
            if (
copy($_FILES['imagen']['tmp_name'],$destino))
                echo 
"Archivo copiado <br/>";
            else{
                echo 
"Fallo al subir archivo <br/>";
                
$destino="./images/defecto_u.png";
            }
        }
        else{
            echo 
"No se ha indicado ninguna imagen <br/>";
            
$destino "./images/defecto_u.png";
        }
    }
    else{
        echo 
"El archivo es demasiado grande <br/>";
        
$destino "./images/defecto_u.png";
    }
    
    
//Conectamos con la base de datos
    
$c = new Conexion("a9982974_1","root","","localhost");
    
$conexion $c->conectar();
    
$user = new Usuario;
    
$user->Registrar($nombre,$apellidos,$dir,$nac,$mail,$login,$pass,$destino,$conexion);
?>

Y me da los siguiesntes notice:

Código:
Notice: Undefined index: imagen in C:\xampp\htdocs\dar_alta.php on line 16

Notice: Undefined index: imagen in C:\xampp\htdocs\dar_alta.php on line 17

Notice: Undefined index: imagen in C:\xampp\htdocs\dar_alta.php on line 18

Notice: Undefined index: imagen in C:\xampp\htdocs\dar_alta.php on line 20

Basicamente me dice que no esta definido el indice a imagen, pero si que lo defino por antes del submit tengo un input del tipo file que lo llamo imagen, y despues en el script php hago referencia a el. Tiene que ser una tonteria, porque en otro lado tengo el mismo script (bsicamente la parte de subir archivos) y me va