Diferencia entre revisiones de «Usuario:ManuelRomero/NewPHP/B2T1/formularios/practica»
(Página creada con «{{:Usuario:ManuelRomero/dwes/B2T1/formularios/nav}}») |
|||
Línea 1: | Línea 1: | ||
{{:Usuario:ManuelRomero/dwes/B2T1/formularios/nav}} | {{:Usuario:ManuelRomero/dwes/B2T1/formularios/nav}} | ||
+ | {{Actividad|Gestión de música e imágenes| | ||
+ | *Vamos a hacer un sitio web para subir canciones e imágenes y poderlas ver/reproducir | ||
+ | *La aplicación tendrá dos páginas php, según se muestra en la imagen. | ||
+ | <b>Index.php</b> | ||
+ | 1.-A continuación se dan las especificaciones de la práctica | ||
+ | 2.-La aplicación requiere que el usuario se identifique con nombre y password | ||
+ | 3.-En esa primera pantalla (no es lo normal), tendrá también la posibilidad de subir música o imagen | ||
+ | 4.-Solo se puede subir un fichero cada vez | ||
+ | 5.-El fichero debe de estar limitado en el cliente y en el servidor con un tamaño máximo de 10 Megas | ||
+ | <b>descarga.php</b> | ||
+ | *Primero leeremos el usuario. Si este es '''''admin''''' y password '''''admin''''' tendremos una funcionalidad de poder hacer que los ficheros de música e imágenes subidos queden disponibles para que cualquier usuario los pueda ver o escuchar | ||
+ | *Si el usuario no es ese, solo podrá ver o escuchar los ficheros disponibles | ||
+ | *Para ello trabajaremos de la siguiente forma | ||
+ | *Los ficheros que un usuario sube irán a las siguientes carpets | ||
+ | 1.- ficheros de tipo imagen = ./upload/imagenes El type del fichero tiene la palabra '''''image''''' | ||
+ | 2.- ficheros de tipo musica o sonido = ./upload/musica El type del fichero tiene la palabra '''''audio''''' | ||
+ | 3.- ficheros de otro tipo = ./upload/otros El type del fichero tiene la palabra '''''audio''''' | ||
+ | *Los ficheros que el administrador clickee serán copidos respectivamente a | ||
+ | 1.- de ./upload/imagenes a ./download/imagenes | ||
+ | 2.- de ./upload/musica a ./download/musica | ||
+ | 3.- de ./upload/otros a ./download/otros | ||
+ | *El usuario no admin solo verá los ficheros que estén en la carpeta de download, los cuales podrá como ya hemos dicho visualziar y ver | ||
+ | [[Imagen:portalDescargas.png]] | ||
+ | }} | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | **Identificarse con nombre y usuario | ||
+ | |||
+ | *La aplicación tendrá la posibilidad de aportar nombre y usuario, si no se ap | ||
+ | |||
+ | <form action="descarga.php" method="POST"> | ||
+ | <?php | ||
+ | |||
+ | /* | ||
+ | * To change this license header, choose License Headers in Project Properties. | ||
+ | * To change this template file, choose Tools | Templates | ||
+ | * and open the template in the editor. | ||
+ | */ | ||
+ | |||
+ | //Guardar el fichero en el servidor | ||
+ | $fichero = $_FILES['fichero']['name']; | ||
+ | $origen = $_FILES['fichero']['tmp_name']; | ||
+ | print_r($fichero); | ||
+ | $tipo =$_FILES['fichero']['type'][0]; | ||
+ | var_dump($tipo); | ||
+ | echo "tipo = $tipo<br />"; | ||
+ | //La persona accede a la app registrandose (usuario y email) | ||
+ | $dir_subidas = '/var/www/musica/uploads/'; | ||
+ | |||
+ | if (strpos($tipo,"audio")!=false){ | ||
+ | echo "El fichero $fichero[0] es de tipo audio"; | ||
+ | $dir_subidas ='/var/www/musica/uploads/musica'; | ||
+ | } | ||
+ | if (strpos($tipo,"image")!=false){ | ||
+ | echo "El fichero $fichero[0] es de tipo imagen"; | ||
+ | $dir_subidas ='/var/www/musica/uploads/imagenes'; | ||
+ | } | ||
+ | |||
+ | //Cualquier usuario puede subir y ver/escuchar lo que esté disponible | ||
+ | |||
+ | //Solo el admin/admin puede chequear qué ficheros se pueden ver/escuchar | ||
+ | |||
+ | //Los ficheros que se pueden escuchar también se podrán descargar | ||
+ | |||
+ | //Para ello vamos a organizar 4 directorios | ||
+ | // upload/musica | ||
+ | // upload/imagenes | ||
+ | // download/musica | ||
+ | // download/imagenes | ||
+ | |||
+ | |||
+ | |||
+ | //Si el fichero es de sonido va a la carpeta upload/musica | ||
+ | //Si el ficheor es de imágenes va a la carpeta upload/imagenes | ||
+ | |||
+ | //Esto lo puede hacer cualquier usuario | ||
+ | |||
+ | //Escribimos en un fichero usuario y momento y fichero que ha subido, y la ip desde dónde lo ha hecho | ||
+ | |||
+ | //Si el usuario es admin /admin tendrá un check por cada imagen y canción | ||
+ | //Si las picas quedarán accesibles para que cualquier usuario las pueda ver escuchar | ||
+ | |||
+ | |||
+ | |||
+ | //directorio donde dejaré las canciones | ||
+ | |||
+ | $destino = $dir_subidas .$fichero[0]; | ||
+ | //echo $destino ."-".$origen[0]; | ||
+ | |||
+ | if (move_uploaded_file($origen[0], $destino)) | ||
+ | echo ('file load ok<br />'); | ||
+ | else | ||
+ | echo ("Danger!!!!! <br />"); | ||
+ | if (isset($_POST['sonar'])){ | ||
+ | echo "<audio src='http://localhost/musica/uploads/a.mp3' autoplay='true' >"; | ||
+ | |||
+ | } | ||
+ | ?> | ||
+ | <input type="submit" value="sonar" name = "sonar"> | ||
+ | </form> | ||
+ | }} |
Revisión de 22:33 27 oct 2016
- Identificarse con nombre y usuario
- La aplicación tendrá la posibilidad de aportar nombre y usuario, si no se ap
<form action="descarga.php" method="POST"> <?php
/*
* To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */
//Guardar el fichero en el servidor
$fichero = $_FILES['fichero']['name'];
$origen = $_FILES['fichero']['tmp_name'];
print_r($fichero);
$tipo =$_FILES['fichero']['type'][0];
var_dump($tipo);
echo "tipo = $tipo
";
//La persona accede a la app registrandose (usuario y email)
$dir_subidas = '/var/www/musica/uploads/';
if (strpos($tipo,"audio")!=false){
echo "El fichero $fichero[0] es de tipo audio"; $dir_subidas ='/var/www/musica/uploads/musica';
} if (strpos($tipo,"image")!=false){
echo "El fichero $fichero[0] es de tipo imagen"; $dir_subidas ='/var/www/musica/uploads/imagenes';
}
//Cualquier usuario puede subir y ver/escuchar lo que esté disponible
//Solo el admin/admin puede chequear qué ficheros se pueden ver/escuchar
//Los ficheros que se pueden escuchar también se podrán descargar
//Para ello vamos a organizar 4 directorios // upload/musica // upload/imagenes // download/musica // download/imagenes
//Si el fichero es de sonido va a la carpeta upload/musica //Si el ficheor es de imágenes va a la carpeta upload/imagenes
//Esto lo puede hacer cualquier usuario
//Escribimos en un fichero usuario y momento y fichero que ha subido, y la ip desde dónde lo ha hecho
//Si el usuario es admin /admin tendrá un check por cada imagen y canción //Si las picas quedarán accesibles para que cualquier usuario las pueda ver escuchar
//directorio donde dejaré las canciones
$destino = $dir_subidas .$fichero[0]; //echo $destino ."-".$origen[0];
if (move_uploaded_file($origen[0], $destino))
echo ('file load ok
');
else
echo ("Danger!!!!!
");
if (isset($_POST['sonar'])){
echo "<audio src='http://localhost/musica/uploads/a.mp3' autoplay='true' >";
} ?>
<input type="submit" value="sonar" name = "sonar">
</form> }}