Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/09/2008, 08:14
yonolose
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 2 meses
Puntos: 7
Subir archivo swf

Hola!!

Tengo un problema.

Uso este script que he creado:

Código PHP:
//Antes hay más cosas, pero creo que no son útiles, si alguien me lo pide se las muestro:

$nombre $_POST['nombre'];
$descripcion=$_POST['descripcion'];
$nombreinterno=$_FILES['file']['name'];
$fecha date("Y-m-d");
$destino './juegos';

if(
strlen($nombre)==0){
echo 
$nombre;
echo 
"No se ha escrito nombre.";
exit();
}
if(
strlen($descripcion)==0){
echo 
$descripcion;
echo 
"No se ha escrito descripción.";
exit();
}


//Conexión mysql

$compnombre=mysql_query("SELECT COUNT(nombre) FROM juegos WHERE nombreinterno='$nombreinterno'");
  
$existenombre=mysql_result($compnombre,0);
  if(
$existenombre>0){
  echo 
"Ya existe un juego con este nombre, vuelve a intentarlo cambiándole el nombre desde tu pc";
  exit();
  }
// Leemos el tamaño/tipo del fichero
$tamano $_FILES 'file' ][ 'size' ];
$tipo $_FILES 'file' ][ 'type' ];
// Comprobamos el tamaño/tipo

if($tipo=="application/x-shockwave-flash"){

if( 
$tamano 1048576 ){
move_uploaded_file $_FILES 'file' ][ 'tmp_name' ], $destino '/' $nombreinterno);  
}else{
echo 
"El tamaño es superior al permitido: 1 Mb. Tu archivo: " $tamano;
}


mysql_query("INSERT INTO juegos (nombre,nombreinterno,descripcion,tamano,enviador,fecha) VALUES ('$nombre','$nombreinterno','$descripcion','$tamano','$user','$fecha')") or die (mysql_error());
echo 
"El juego " $nombre " ha sido enviado con &eacute;xito" "<br />" "Gracias por tu colaboraci&oacute;n" '<br /><br /><a href="./newgame.html">NUEVO</a>';

}else{
//Desde aquí, no es .swf
echo "Formato de archivo no v&aacute;lido. Aceptable: .swf";
exit();

El problema es que cuando relleno todos los campos excepto el de file, funciona bien.

Cuando relleno todos los campos, incluyendo el de file, me dice:

No se ha escrito nombre, mientras que yo, en el form, sí he rellenado ese campo.

¿Cuál puede ser el problema?


Form:

Código HTML:
<form action="newgame.php" method="POST" enctype="multipart/form-data">
 
                      <input type="text" name="nombre" maxlength="20" />
                   <textarea cols="25" rows="5" name="descripcion"></textarea>

                     <input type="file" name="file" />
               
                      <input name="submit" type="submit" value="Enviar el juego" />
                  </form> 
Edito: He puesto un echo "tipo: " . $tipo;

exit();

Y me muestra esto:

tipo:

...es decir, no toma el valor type de $_FILES

Última edición por yonolose; 09/09/2008 a las 08:28