Servidor
Hosting
Crear la cuenta de hosting gratis en https://www.alwaysdata.com/en/offers/
nombre del dominio: [NOMBRE]. Ej. wladimir-uab
Copiar el password en algun lugar seguro: [CLAVE_SITIO]
Crear la base de datos
Ir a la lista de tus sitios https://admin.alwaysdata.com/database/?type=mysql
Database name: [NOMBRE]_incidentes. Ej. wladimir-uab_incidentes
Database username: [NOMBRE]. Ej. wladimir-uab
Database password: [CLAVE_SITIO]
Una vez finalizada la creación -> PhpMyAdmin
Crear una tabla llamada incidencias
CREATE TABLE `incidencias` (
`id_incidencias` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`inc_date` timestamp NULL DEFAULT current_timestamp(),
`x` double DEFAULT NULL,
`y` double DEFAULT NULL,
`descripcio` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`nombre` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`foto` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id_incidencias`),
UNIQUE KEY `id_incidencias` (`id_incidencias`)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
Archivos del servidor
Instalar cliente FTP FileZilla
Crear una nueva conexion
Dentro de la carpeta www crear una carpeta llamada images
Crear los archivos del servidor
Crear un archivo llamado lista.php con el siguiente contenido
<?php
header("Access-Control-Allow-Origin: *");
header('Content-type: application/json; charset=utf-8');
$mysqli = new mysqli("localhost", "IDDB_USUARIODB", "CLAVE_DB", "IDDB_incidentes") or die ("No puc connectar-me");
$mysqli->set_charset("utf8");
$query = "select * from incidencias order by inc_date desc";
$result = $mysqli->query($query);
$myarray = array();
while ($row = $result->fetch_object()) {
$myarray[] = $row;
}
echo json_encode($myarray);
$mysqli->close();
?>
Crear un archivo llamado incidencia.php con el siguiente contenido
<?php
header("Access-Control-Allow-Origin: *");
$x = $_POST['x'];
$y = $_POST['y'];
$nombre = $_POST['nombre'];
$desc = $_POST['descripcio'];
$photo = $_POST['foto'];
$mysqli = new mysqli("localhost", "IDDB_USUARIODB", "CLAVE_DB", "IDDB_incidentes") or die ("No puc connectar-me");
$mysqli->set_charset("utf8");
$query = "insert into incidencias (inc_date,x,y,descripcio,nombre,foto) values (now(),".$x.",".$y.",'".$desc."','".$nombre."','".$photo."')";
$result = $mysqli->query($query);
echo json_encode($mysqli->insert_id);
$mysqli->close();
?>
Crear un archivo llamado upload.php con el siguiente contenido
<?php
header("Access-Control-Allow-Origin: *");
// Directory where uploaded images are saved
$dirname = "images/";
// If uploading file
if ($_FILES) {
move_uploaded_file($_FILES["file"]["tmp_name"],$dirname."/".$_FILES["file"]["name"]);
}
?>
Crear un archivo llamado index.php con el siguiente contenido
<html>
<head>
<title>Prueba de PHP</title>
</head>
<body>
<?php
echo '<p>Hola Mundo</p>';
echo 'Versión actual de PHP: ' . phpversion();
?>
</body>
</html>
Opcional
Crear un archivo llamado photo.php con el siguiente contenido
<?php
header("Access-Control-Allow-Origin: *");
$x = $_GET['foto'];
$file_out = "images/".$x; // The image to return
if (file_exists($file_out)) {
$image_info = getimagesize($file_out);
//Set the content-type header as appropriate
header('Content-Type: ' . $image_info['mime']);
//Set the content-length header
header('Content-Length: ' . filesize($file_out));
//Write the image bytes to the client
readfile($file_out);
}
else { // Image file not found
header($_SERVER["SERVER_PROTOCOL"] . " 404 Not Found");
}
?>
Subir los archivos php a la carpeta www
Abrir en el navegador la url de vuestra aplicación por ejemplo https://wladimir-uab.alwaysdata.net/