145 lines
3.7 KiB
PHP
145 lines
3.7 KiB
PHP
<?php
|
|
|
|
ob_start();
|
|
|
|
|
|
$config = parse_ini_file("config.ini");
|
|
|
|
$conn = mysqli_connect($config["db_host"], $config["db_user"], $config["db_password"], "blomzt");
|
|
|
|
if (mysqli_connect_errno()) {
|
|
die("Connection failed: " . mysqli_connect_error());
|
|
}
|
|
|
|
if (!TableExists($config["db_table"], $conn)) {
|
|
$sql = "CREATE TABLE " . $config["db_table"] . " (
|
|
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, location Point NOT NULL, url VARCHAR(65), date_added TIMESTAMP)
|
|
";
|
|
mysqli_query($conn, $sql);
|
|
}
|
|
|
|
?>
|
|
|
|
|
|
<?php
|
|
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|
if ($_POST["Latitude"] == NULL || $_POST["Longtitude"] == NULL) {
|
|
echo "Please don't leave any fields blank";
|
|
die();
|
|
}
|
|
|
|
|
|
$target_dir = "images/";
|
|
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
|
|
$uploadOk = 1;
|
|
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
|
|
// Check if image file is a actual image or fake image
|
|
if(isset($_POST["submit"])) {
|
|
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
|
|
if($check !== false) {
|
|
echo "File is an image - " . $check["mime"] . ".";
|
|
$uploadOk = 1;
|
|
} else {
|
|
echo "File is not an image.";
|
|
$uploadOk = 0;
|
|
}
|
|
}
|
|
// Check if file already exists
|
|
if (file_exists($target_file)) {
|
|
echo "Sorry, file already exists.";
|
|
$uploadOk = 0;
|
|
}
|
|
// Check file size
|
|
if ($_FILES["fileToUpload"]["size"] > 5000000) {
|
|
echo "Sorry, your file is too large.";
|
|
$uploadOk = 0;
|
|
}
|
|
// Allow certain file formats
|
|
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
|
|
&& $imageFileType != "gif" ) {
|
|
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
|
|
$uploadOk = 0;
|
|
}
|
|
// Check if $uploadOk is set to 0 by an error
|
|
if ($uploadOk == 0) {
|
|
echo "Sorry, your file was not uploaded.";
|
|
die();
|
|
// if everything is ok, try to upload file
|
|
} else {
|
|
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
|
|
echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
|
|
} else {
|
|
echo "Sorry, there was an error uploading your file.";
|
|
}
|
|
}
|
|
|
|
if(addToTable($_POST["Latitude"], $_POST["Longtitude"], basename($_FILES["fileToUpload"]["name"]), $config["db_table"], $conn) == false)
|
|
{
|
|
echo "Please enter a valid coordinate";
|
|
die();
|
|
}
|
|
|
|
|
|
header("Location: /#13/".$_POST["Latitude"]."/".$_POST["Longtitude"]);
|
|
die();
|
|
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<html>
|
|
<head>
|
|
<title>Blomzt - Add</title>
|
|
|
|
|
|
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
|
|
<link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.indigo-pink.min.css">
|
|
<link rel="stylesheet" type="text/css" href="/Resources/leaflet/leaflet.css">
|
|
<script defer src="https://code.getmdl.io/1.1.3/material.min.js"></script>
|
|
</head>
|
|
<body>
|
|
|
|
|
|
|
|
<form action="add.php" method="post" enctype="multipart/form-data">
|
|
<input type="text" name="Latitude" placeholder="Latitude">
|
|
<input type="text" name="Longtitude" placeholder="Longtitude">
|
|
<input type="file" name="fileToUpload" id="fileToUpload">
|
|
<input type="submit">
|
|
</form>
|
|
|
|
</body>
|
|
</html>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<?php
|
|
// Functions
|
|
|
|
function TableExists($table, $conn) {
|
|
$res = mysqli_query($conn, "SHOW TABLES LIKE '$table'");
|
|
return mysqli_num_rows($res) > 0;
|
|
}
|
|
|
|
function addToTable($lat, $lon, $url, $table, $conn) {
|
|
if (is_numeric($lat) == false || is_numeric($lon) == false ||
|
|
$lat > 180 || $lat < -180 ||
|
|
$lon > 180 || $lon < -180)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
$sql = "INSERT INTO `" . $table . "` (`id`, `location`, `url`, `date_added`) VALUES (NULL, GeomFromText('POINT(" . $lon ." " . $lat . ")',4326), " . "\"$url\"" . ", CURRENT_TIMESTAMP)";
|
|
printf($sql);
|
|
$res = mysqli_query($conn, $sql);
|
|
//($res) ? printf("true") : printf("false");
|
|
return $res;
|
|
}
|
|
?>
|