App inventor 2 en español
Cómo programar los teléfonos móviles con Android
mediante App inventor 2 - Juan Antonio Villalpando
--- PHP y MySQL en App Inventor 2 --
Volver al índice del tutorial de PHP y MySQL
____________________________
323.- Subir archivo al servidor web mediante PHP.
- Vamos a subir archivos desde nuestro ordenador al servidor web, en nuestro caso al hosting de hostinger, 317_hosting_gratuito.
- Entraremos en una página web, desde esa página localizaremos en nuestro ordenador el archivo que queremos subir y lo subiremos a nuestro hosting.
http://kio4.esy.es/subir_archivo.htm
----------------------------------------------------------------------------------
NOTA: si estás utilizando el hosting gratuito de hostinger, como hemos visto en el tutorial anterior, envía los archivos .htm y .php al servidor remoto mediante FTP, como hemos visto en el tutorial 317_hosting_gratuito.
- Es necesario trabajar en este cliente FTP.
________________________________________________________
________________________________________________________
- Inicio.
- El usuario localiza un archivo en su ordenador y lo envía al servidor web.
- Entramos con el cliente FTP Filezilla en nuestro hosting y creamos una carpeta en el servidor remoto, llamada subidos.
- En la parte del Sitio remoto, pulsamos con el botón derecho del ratón y Creamos un directorio llamada subidos.
- Ahora pulsamos con el botón derecho del ratón sobre el directorio subidos, para cambiarle los Permisos de archivo.
- Le marcamos todos los permisos para que cualquiera pueda subir archivos a ese directorio.
- El directorio queda bastante desprotegido, pero nos puede valer para hacer pruebas.
_____________________________
- Página web htm.
subir_archivo.htm
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//ES"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Subir archivo - KIO4.COM</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<div align="center">
<p><b><font color="#0000FF" size="7" face="Arial, Helvetica, sans-serif"><b>WAMP - PHP - MySQL en App inventor 2<br/>
<font color="#FF0000" size="4"><b>por Juan Antonio Villalpando<br/>
<font color="#009900" size="7">-- PHP y MySQL en App inventor 2 --</font></font></font></b></p>
</div>
<table width="79%" height="293" border="4" align="center" cellpadding="12" cellspacing="0" bordercolor="#009900" bgcolor="#FFFFCC">
<tr valign="top">
<td height="285" bgcolor="#FFFFFF">
<p align="left"><font size="4" face="Arial, Helvetica, sans-serif"> Pulsa el Botón de <b><font color="#009900">Examinar</font></b> para elegir un archivo de tu ordenador y luego el Botón de <font color="#009900"><b>Enviar</b></font> para subirlo al servidor web. </font></font></font></p>
<p align="left"><font color="#0000FF" size="6" face="Arial, Helvetica, sans-serif"><b>Subir archivos:</b> </font>
<p align="left">
<form action="subir_archivo.php" method="post" enctype="multipart/form-data">
<div align="center">
<font face="Arial, Helvetica, sans-serif">
<input name="nombre_archivo" type="file" style="font-size:24px; font-family: arial;">
<br><br><br>
<button type="submit" style="font-size:24px; font-family: arial;">Enviar</button>
</font></div>
</form></td>
</tr>
</table>
</div>
</body>
</html>
|
- Así quedará: http://kio4.esy.es/subir_archivo.htm
_____________________________
- Página y código PHP.
subir_archivo.php
|
<!doctype html public "-//W3C//DTD HTML 4.0 //ES">
<html>
<head>
<title>Subir archivo PHP - KIO4.COM</title>
</head>
<body>
<div align="center">
<b><font color="#0000FF" size="7" face="Arial, Helvetica, sans-serif"><b>WAMP - PHP - MySQL en App inventor 2<br/>
<font color="#FF0000" size="4"><b>por Juan Antonio Villalpando<br/>
<font color="#009900" size="7">-- PHP y MySQL en App inventor 2 --
</font></font></font></b>
</div>
<?php
// Juan A. Villalpando
// KIO4.COM
echo "<br><br><br><br><font size='5' face='Arial, Helvetica, sans-serif'>";
$directorio_de_subidas = "subidos/";
$nombre_archivo = basename($_FILES['nombre_archivo']['name']);
$direccion_completa = $directorio_de_subidas.$nombre_archivo;
$tamano = filesize($_FILES['nombre_archivo']['tmp_name']);
if($tamano < 50000){
if(move_uploaded_file($_FILES['nombre_archivo']['tmp_name'], $direccion_completa)) {
echo "- El archivo ".$nombre_archivo." ha subido al servidor.";
echo "<br><br><br><br><a href='http://kio4.esy.es/".$nombre_archivo."'>http://kio4.esy.es/subidos/".$nombre_archivo."</a>";
} else {
echo "- Error en la subida del archivo.";
}
} else {
echo "- El archivo ".$nombre_archivo." no puede subir porque es mayor de 50 KB. Tiene ".$tamano," KB.";
}
echo "<br><br><center><a href='subir_archivo.htm'>Volver</a></center>";
echo "</font> ";
?>
</body>
</html>
|
___________________________________
- Comentarios del código PHP.
- Los dos archivos anteriores subir_archivo.htm y subir_archivo.php, los subiremos a nuestro servidor web mediante FTP.
- El archivo recibido viene con esta variable: basename($_FILES['nombre_archivo']['name'])
- Pero con eso apenas se puede trabajar, si quieres ver información deberá verlo en su carpeta temporal.
$tamano = filesize($_FILES['nombre_archivo']['tmp_name']);
- He limitado el tamaño del archivo permitido para subir en 50 KB.
- Si el tamaño del archivo es menor de 50000, se guardará en:
$direccion_completa = $directorio_de_subidas.$nombre_archivo;
- Siendo el $directorio_de_subidas = "subidos/";
- He puesto códigos HTM dentro del PHP mediante los echo, para que las letras tengan una mejor presentación.
- La línea:
echo "<a href='http://kio4.esy.es/subidos/".$nombre_archivo."'>http://kio4.esy.es/subidos/".$nombre_archivo."</a>";
muestra la dirección del archivo una vez subido, si subes una imagen o un texto, lo podrás ver al pulsar el enlace.
- Para comprobar si los archivos han subido, podemos hacerlo mediante FTP entrando en el directorio subidos.
_____________________________
- Comentarios.
- Subimos mediante el cliente FTP Filezilla los archivos subir_archivo.htm y subir_archivo.php a nuestro hosting.
- Ahora pulsamos en la dirección indicada y podrás subir archivos al directorio subidos de mi hosting remoto.
http://kio4.esy.es/subir_archivo.htm
- Los archivos que subamos se guardarán en el directorio subidos del hosting remoto.
- Si el archivo es de tipo de imágenes, texto, HTM, mp3,... se podrá ver escribiendo...
http://kio4.esy.es/subidos/nombredelarchivo.aaa
_________________
- Un solo archivo.
- Este es el mismo código que hemos visto anteriormente, en este caso he unido los archivo subir_archivo.htm y subir_archivo.php en un solo archivo.
sube_archivo.php
|
<html>
<head>
<title>Subir archivo - KIO4.COM</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<div align="center">
<p><b><font color="#FF0000" size="4"><b>por Juan Antonio Villalpando - kio4.com <br/></font></b></p>
</div>
<table width="79%" height="233" border="4" align="center" cellpadding="12" cellspacing="0" bordercolor="#009900" bgcolor="#FFFFCC">
<tr valign="top">
<td height="225" bgcolor="#FFFFFF">
<p align="left"><font size="4" face="Arial, Helvetica, sans-serif"> Pulsa el Botón de <b>
<font color="#009900">Examinar</font></b> para elegir un archivo de tu ordenador y luego el Botón de
<b>Enviar</b></font> para subirlo al servidor web.</font></p>
<p align="left">
<form action="sube_archivo.php" method="post" enctype="multipart/form-data">
<div align="center">
<input name="nombre_archivo" type="file" style="font-size:24px; font-family: arial;">
<br><br><br>
<button type="submit" style="font-size:24px; font-family: arial;">Enviar</button></font></div>
</form></td>
</tr>
</table>
</div>
<?php
// Juan A. Villalpando
// KIO4.COM
echo "<br><br><br><br><font size='5' face='Arial, Helvetica, sans-serif'>";
$directorio_de_subidas = "subidos/";
$nombre_archivo = basename($_FILES['nombre_archivo']['name']);
$direccion_completa = $directorio_de_subidas.$nombre_archivo;
$tamano = filesize($_FILES['nombre_archivo']['tmp_name']);
if($tamano < 2500000){
if(move_uploaded_file($_FILES['nombre_archivo']['tmp_name'], $direccion_completa)) {
echo "- El archivo ".$nombre_archivo." ha subido al servidor.";
echo "<br><br><br><a href='http://kio4.com/appinventor/php/subidos/".$nombre_archivo."'>http://kio4.com/appinventor/php/subidos/".$nombre_archivo."</a>";
} else {
echo "- ------";
}
} else {
echo "- El archivo ".$nombre_archivo." no puede subir porque es mayor de 2500 KB. Tiene ".$tamano," KB.";
}
echo "<br><br><center><a href='sube_archivo.php'>Volver</a></center></font>";
?>
</body>
</html>
;
|
_____________________________
___________________________
_________________________
_______________________
_____________________
___________________
_________________
- Otro código para subir imágenes al servidor.
- Aquí tenemos otro código para subir y luego ver la imagen subida al servidor.
- Con un solo archivo PHP, localizamos el archivo a subir, lo subimos y lo vemos en la misma página.
- Copia este archivo en tu servidor mediante FTP y ejecútalo. Luego consulta mediante FTP la imagen subida.
http://kio4.esy.es/blob_subir.php
blob_subir.php
|
<?php
if (isset($_FILES['imagen'])){
move_uploaded_file($_FILES['imagen']['tmp_name'], $_FILES['imagen']['name']);
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data">
<input type="file" onchange="this.form.submit()" name="imagen"/>
</form>
<?php if (isset($_FILES['imagen'])){?>
<img src="<?php echo $_FILES['imagen']['name'] ?>" style="max-width:400px">
<?php }?> |
_____________________________
- Propuestas.
- Cambia el código PHP para que solo se puedan subir archivos de textos con la extensión .csv, por ejemplo.
__________________________________
__________________________________
|