stellenantrag_neu/admin/expo_jahrgangsstatus.php
2022-11-28 09:17:05 +01:00

102 lines
3.9 KiB
PHP
Executable File

<?php
$user_admin=$_COOKIE["user_admin"];
$jahrgang=$_COOKIE["jahrgang"];
$hs=$_COOKIE["ck_hs"];
if ($jahrgang == ""){ require("jahrgang.php"); exit;} //Wenn man kein Jahrgang ausgew&auml;hlt hat wird die Jahrgangsauswahlseite geladen
include("kurs/datenbankanbindung.php"); // f&uuml;gt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php
// Rechte&uuml;berpr&uuml;fung
$db = dbconnect();
if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite
$result = $db->query("SELECT 1 FROM stan_admin_rechte, stan_admin_rechte_zuord , stan_admin where stan_admin_rechte.stan_admin_rolle = stan_admin_rechte_zuord.stan_admin_rolle AND stan_admin_rechte_zuord.said = stan_admin.said AND stan_admin.user = '$user_admin' AND stan_admin_rechte_zuord.stan_admin_rolle = 'a_vber'");
$row = $result->fetch_array();
if ($row[0] != 1){ include("kurs/rechte.php"); exit;}
// Rechte&uuml;berpr&uuml;fung ende
$Use_Title = 0;
$now_date = date('m-d-Y H:i');
$title = "Dump For Table $DB_TBLName from Database $DB_DBName on $now_date";
$sql = "SELECT t2.vorname Vorname
,t2.nachname Nachname
,t2.mtknr 'Matrikelnr.'
,t2.ag AG
, t3.bezeichnung Vertiefungsbereich
, concat(date_format(t1.beginn, '%d.%m.%Y'), ' - ',date_format(t1.ende, '%d.%m.%Y')) Datum
FROM stan_antrag t1, stud t2, stan_vertiefungsbereich t3
WHERE t1.status = ( SELECT MAX(t2.status)
FROM stan_antrag t2
WHERE t1.aendid = t2.aendid
AND t2.status !='2'
)
AND (t1.zuweisung is NULL OR t1.zuweisung='Z')
AND t1.uid=t2.uid
AND t1.vert_bereich = t3.vbid
AND t2.jahrgang = '$jahrgang'
AND t2.hs ='$hs'
AND t2.durchgefallen != 'Y'
ORDER BY nachname, vorname, beginn";
$result = @$db->query($sql)
or die("Couldn't execute query:<br>" . mysql_error(). "<br>" . mysql_errno());
//header info for browser
header('Content-Encoding: UTF-8');
header("Content-type: text/csv; charset=UTF-8");
#header("Content-Type: text/comma-separated-values;charset=UTF-8"); //header("Content-Type: application/$file_type");
header("Content-Disposition: attachment; filename=vertiefungsbereiche_$jahrgang.csv"); //header("Content-Disposition: attachment; filename=database_dump.$file_ending");
header("Pragma: no-cache");
header("Expires: 0");
echo "\xEF\xBB\xBF";
if ($Use_Title == 1){
echo("$title\n");
}
//define separator (defines columns in excel & tabs in word)
$sep = ";"; //tabbed character
//start of printing column names as names of MySQL fields
for ($i = 0; $i < mysqli_num_fields($result); $i++) {
echo mysqli_fetch_field_direct($result,$i)->name . ";";
}
print("\n");
//end of printing column names
//start while loop to get data
/*
note: the following while-loop was taken from phpMyAdmin 2.1.0.
--from the file "lib.inc.php".
*/
while($row = $result->fetch_array())
{
//set_time_limit(60); // HaRa
$schema_insert = "";
for($j=0; $j<mysqli_num_fields($result);$j++)
{
if(!isset($row[$j]))
$schema_insert .= "NULL".$sep;
elseif ($row[$j] != "")
$schema_insert .= "$row[$j]".$sep;
else
$schema_insert .= "".$sep;
}
$schema_insert = str_replace($sep."$", "", $schema_insert);
//following fix suggested by Josue (thanks, Josue!)
//this corrects output in excel when table fields contain \n or \r
//these two characters are now replaced with a space
$schema_insert = preg_replace("/\r\n|\n\r|\n|\r/", " ", $schema_insert);
$schema_insert .= "\t";
print(trim($schema_insert));
print "\n";
}
?>