93 lines
3.3 KiB
PHP
93 lines
3.3 KiB
PHP
<?php
|
|
|
|
require_once("../config.db.php");
|
|
require_once("../config.php");
|
|
require_once("../lib/functions.php");
|
|
require_once("../lib/geocoding.php");
|
|
|
|
$strUsername = htmlentities(trim($_POST['username']));
|
|
$strUsername = addslashes($strUsername);
|
|
$strAge = (isset($_POST['ext_age'])) ? $_POST['ext_age'] : "";
|
|
$strTransport = (isset($_POST['ext_transport'])) ? $_POST['ext_transport'] : "";
|
|
$strDescription = htmlentities(trim($_POST['description']));
|
|
$strDescription = addslashes($strDescription);
|
|
$numTopic = (isset($_POST['topic'])) ? $_POST['topic'] : 2;
|
|
$numDefect = (isset($_POST['defect'])) ? $_POST['defect'] : 0;
|
|
$numLng = $_POST['lng'];
|
|
$numLat = $_POST['lat'];
|
|
$strDistrict = $_POST['district'];
|
|
$boolUploadOk=false;
|
|
|
|
//Leere Einträge verhindern
|
|
if (empty($strUsername) || empty($numLng) || empty($numLat)) {
|
|
die("not valid!");
|
|
}
|
|
|
|
if ($boolUpload && !empty($_FILES['uploadfile']['name'])) {
|
|
$uploadfile = $uploaddir . basename($_FILES['uploadfile']['name']);
|
|
$fileinfo = @getimagesize($_FILES["uploadfile"]["tmp_name"]);
|
|
if (!empty($fileinfo)) {
|
|
//$info=read_gps_location($_FILES["uploadfile"]["tmp_name"]);
|
|
$i=1;
|
|
while (file_exists($uploadfile)) {
|
|
$uploadfile=$uploaddir.$i."_".basename($_FILES['uploadfile']['name']);
|
|
$i++;
|
|
}
|
|
if (move_uploaded_file($_FILES['uploadfile']['tmp_name'], $uploadfile)) {
|
|
$filename=$_FILES['uploadfile']['name'];
|
|
$filesize=$_FILES['uploadfile']['size'];
|
|
$filetype=$_FILES['uploadfile']['type'];
|
|
//echo "Filetype: ".$filetype;
|
|
$boolUploadOk = true;
|
|
} else {
|
|
die("Upload failed with error code " . $_FILES['file']['error']);
|
|
}
|
|
}
|
|
}
|
|
|
|
$stmt = $db->prepare("INSERT INTO location (username,age,transport,description,defect,topic,lng,lat,district)
|
|
VALUES (:username,:age,:transport,:description,:defect,:topic,:lng,:lat,:district)");
|
|
|
|
$stmt->bindValue(':username', $strUsername);
|
|
$stmt->bindValue(':age', $strAge);
|
|
$stmt->bindValue(':transport', $strTransport);
|
|
$stmt->bindValue(':description', $strDescription);
|
|
$stmt->bindValue(':topic', $numTopic);
|
|
$stmt->bindValue(':lng', $numLng);
|
|
$stmt->bindValue(':lat', $numLat);
|
|
$stmt->bindValue(':defect', $numDefect);
|
|
$stmt->bindValue(':district',$strDistrict);
|
|
$stmt->execute();
|
|
|
|
// fetch last_id - sqlite
|
|
$strSQL="SELECT id FROM location ORDER BY id DESC limit 1";
|
|
$result = $db->query($strSQL);
|
|
if ($row = $result->fetch(PDO::FETCH_ASSOC)) {
|
|
$id = $row['id'];
|
|
}
|
|
|
|
// Write address data to table address
|
|
$data=getAddress($numLat,$numLng);
|
|
if ($data) {
|
|
writeAddress($db,$id,$data);
|
|
}
|
|
|
|
// Store File Upload
|
|
if ($boolUploadOk) {
|
|
$strSQL="INSERT INTO files (loc_id,filename,filesize,filetype) VALUES (:loc_id,:filename,:filesize,:filetype)";
|
|
$stmt = $db->prepare($strSQL);
|
|
$stmt->bindValue(':loc_id',$id);
|
|
$stmt->bindValue(':filename',$filename);
|
|
$stmt->bindValue(':filesize',$filesize);
|
|
$stmt->bindValue(':filetype',$filetype);
|
|
$stmt->execute();
|
|
}
|
|
|
|
// Retrun Markertext of entry
|
|
$strSQL="SELECT loc.*,f.filename FROM location loc LEFT JOIN files f ON loc.id=f.loc_id ORDER BY loc.id DESC limit 1";
|
|
$result = $db->query($strSQL);
|
|
if ($row = $result->fetch(PDO::FETCH_ASSOC)) {
|
|
$markerText=generate_tooltip_description($row);
|
|
$markerText=stripcslashes($markerText);
|
|
}
|
|
echo ($markerText); |