Ver Mensaje Individual
  #107 (permalink)  
Antiguo 20/05/2010, 05:24
Avatar de Flow89
Flow89
 
Fecha de Ingreso: abril-2010
Ubicación: Valladolid
Mensajes: 346
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Seguridad en PHP [Importante];

Tengo un problemilla, el sistema funciona perfecto...

El caso es que me sube el archivo, pero no me inserta los datos en la BBDD. La consulta no da ningun error, asique no se que puede estar mal :S

Código PHP:
<?php
//incluimos el archivo de conexion y el login
include("conex.php");
include(
"login.php");

//comprobamos si esta logueado correctamente, si lo esta mostramos la pagina 
if($loginCorrecto)
{
//tomo el valor de un elemento de tipo texto del formulario
$titulo mysql_real_escape_string($_POST[titulo]);
$autor mysql_real_escape_string($_POST[autor]);
$categoria mysql_real_escape_string($_POST[categoria]);
$descripcion mysql_real_escape_string($_POST[descripcion]);

//Creamos el array de archivos permitidos para subir al servidor
$tipos_permitidos = array('multipart/x-zip',
'application/msword',
'audio/x-wav',
'text/plain',
'application/x-shockwave-flash',
'text/richtext',
'application/octet-stream',
'application/mspowerpoint',
'application/pdf',
'audio/mpeg',
'video/mpeg',
'video/mpeg',
'video/x-mpeg',
'audio/x-mpeg-3',
'video/quicktime',
'image/jpeg',
'image/jpeg',
'video/avi',
'video/msvideo'); 

//datos del arhivo
$nombre $_FILES['userfile']['name']; 
$nombre_archivo $_FILES['userfile']['tmp_name'];
$tipo_archivo $_FILES['userfile']['type'];
$tamano_archivo $_FILES['userfile']['size'];
$destino '../descargas';

//compruebo si las características del archivo son las que deseo
if (!(in_array($tipo_archivo,$tipos_permitidos)) && ($tamano_archivo 20971520)) { 
    echo 
"<META HTTP-EQUIV=\"refresh\" CONTENT=\"4; url=../fdescarga.php\">"
    echo 
"<table style=\"height:100%;width:100%;\" border=\"0\"><tr><td class=\"estilo34\"><div align=\"center\">La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos zip, word, wav, txt, swf, rtf, pdf, powerpoint, mpg, mp3, jpg, avi.<br><li>Se permiten archivos de 20Mb máximo.<br> Seras redireccionado automaticamente.</div></td></tr></table>"
}else{
    if (
move_uploaded_file($nombre_archivo"$destino/$nombre")){
    
$sql "INSERT INTO descargas (titulo,autor,categoria,descripcion,archivo) VALUES('$titulo', '$autor ', '$categoria', '$descripcion','$nombre')";   
     
mysql_query($sql);
    echo 
"<META HTTP-EQUIV=\"refresh\" CONTENT=\"4; url=../loginpanel/administracion.php\">";
    echo 
"<table style=\"height:100%;width:100%;\" border=\"0\"><tr><td class=\"estilo34\"><div align=\"center\">El archivo a sido subido correctamente.<br> Sera redireccionado automaticamente.</div></td></tr></table>"

    }else{
     echo 
"<META HTTP-EQUIV=\"refresh\" CONTENT=\"4; url=../fdescarga.php\">"
    echo 
"<table style=\"height:100%;width:100%;\" border=\"0\"><tr><td class=\"estilo34\"><div align=\"center\">Ocurrio un error, el archivo no ha sido subido. Reintentelo.<br> Seras redireccionado automaticamente.</div></td></tr></table>"
    }
}
}
else

echo 
"<META HTTP-EQUIV=\"refresh\" CONTENT=\"2; url=../panel.php\">";
echo 
"<table style=\"height:100%;width:100%;\" border=\"0\"><tr><td class=\"estilo34\"><div align=\"center\">No estas logueado, no puedes acceder aquí.<br> Seras redireccionado automaticamente.</div></td></tr></table>"
}
?>
A ver si me echais una manilla. Muchas gracias.


ERROR ARREGLADO
Me faltaba una comilla detras de $nombre' para cerrar la consulta y por eso no la hacia (el caso es que no daba error de sintaxis). El codigo ya lo he modificado para que lo podais copiar.
__________________
Seamos realistas. Busquemos lo imposible. ;)
La forma de dar las gracias en este foro, es dando Karma, aunque a veces con un simple Gracias, basta.

Última edición por Flow89; 20/05/2010 a las 05:47