melder/admin/dump.php
Walter Hupfeld c1c4151300 Admin User
2024-02-21 19:42:20 +01:00

71 lines
1.9 KiB
PHP

<?php
/** *****************************
* Ideenmelder
* Autor: Walter Hupfeld, Hamm
* E-Mail: info@hupfeld-software.de
* Version: 1.0
* Datum: 18.05.2021
* zuletzt geändert: 18.02.2024
******************************** */
session_start();
$strLoginName=(isset($_SESSION['user'])) ? $_SESSION['user'] : "" ;
$boolLogin = (!empty($strLoginName));
if (!$boolLogin) {
header("Location: login.php");
}
$strDistrict=$_SESSION['district'];
if (isset($_SESSION['superadmin'])) {
$boolSuperAdmin = $_SESSION['superadmin']==true;
} else {
$boolSuperAdmin=false;
}
$sqlDistrict = ($boolSuperAdmin) ? "1" : "l.district='$strDistrict'";
require ("../config.php");
// Set headers to make the browser download the results as a csv file
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=dump.csv");
header("Pragma: no-cache");
header("Expires: 0");
// Query
$strSQL="SELECT l.id as lid,l.*,adr.*
FROM location l LEFT JOIN address adr ON l.id=adr.loc_id
WHERE $sqlDistrict
ORDER BY created_at ASC";
$query = $db->query($strSQL);
// Fetch the first row
$row = $query->fetch(PDO::FETCH_ASSOC);
// If no results are found, echo a message and stop
if ($row == false){
echo "No results";
exit;
}
// Print the titles using the first line
print_titles($row);
// Iterate over the results and print each one in a line
while ($row != false) {
// Print the line
$line = implode( ";",array_values($row));
$line = html_entity_decode($line);
$line = str_replace(array("\r\n", "\r", "\n"), "<br />", $line);
echo $line . "\n";
// Fetch the next line
$row = $query->fetch(PDO::FETCH_ASSOC);
}
// Prints the column names
function print_titles($row){
echo implode(";",array_keys($row)) . "\n";
}
?>