Die schaut so aus:
include/contents/bewerben.php
<?php
// Autor: Sniper
// Support: www.ilch.de
defined ('main') or die ( 'no direct access' );
$title = $allgAr['title'].' :: Bewerbung';
$hmenu = 'Bewerbung';
$design = new design ( $title , $hmenu );
$design->header();
$tpl = new tpl ( 'bewerben' );
if(db_num_rows(db_query("SELECT * FROM prefix_groups WHERE show_joinus = '1'")) != "0"){
include('include/includes/func/gallery.php');
$path = "include/images/lichtbild";
if(!is_dir($path.$name)){
mkdir($path.$name,0777);
}
$path = "include/downs/bewerbung";
if(!is_dir($path.$name)){
mkdir($path.$name,0777);
}
#-------------------------------------------------------------------------------
### HTML Datei einbinden
#-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------
/// Variablen setzen
//-------------------------------------------------------------------------------
$anrede = escape($_POST['anrede'],'string');
$nachname = escape($_POST['nachname'],'string');
$vorname = escape($_POST['vorname'],'string');
$gb_day = escape($_POST['gb_day'],'string');
$gb_month = escape($_POST['gb_month'],'string');
$gb_year = escape($_POST['gb_year'],'string');
$email = escape($_POST['email'],'string');
$ort = escape($_POST['ort'],'string');
$plz = escape($_POST['plz'],'string');
$street = escape($_POST['street'],'string');
$hnummer = escape($_POST['hnummer'],'string');
$bewerben = escape($_POST['bewerben'],'string');
$erfahrung = escape($_POST['erfahrung'],'string');
$equip = escape($_POST['equip'],'string');
$info = escape($_POST['info'],'string');
$pic = $_FILES['pic'];
$data = $_FILES['data'];
//-------------------------------------------------------------------------------
//// Bewerbungs Informtaionen Einstellen
//-------------------------------------------------------------------------------
$data_maxsize = "1048576";
$form = "";
$fehler = "";
if(isset($_POST['submit'])){
if(!empty($pic['name'])){
$dateityp = GetImageSize($pic['tmp_name']);
if($dateityp[2] == 0)
{
$fehler .= "<li>Bitte im Feld 'Lichtbild' nur Bilder im Gif bzw. jpg Format hochladen</li>";
}
}
//-------------------------------------------------------------------------------
//// Überprüfen ob das Feld bewerbunfsinformtionen richtig ausgefüllt wurde
//-------------------------------------------------------------------------------
if ($data['type'] == 'application/zip' OR $data['type'] == 'application/x-rar-compressed' OR $data['type'] == "application/octet-stream"){
if($data['size'] > $data_maxsize){
$fehler .= "<li>Die Datei im Feld 'Bewerbungsinformationen' darf maximal ".$data_maxsize / 8192 ."kb groß sein!</li>";
}
}
$check = db_num_rows(db_query("SELECT * FROM `prefix_user` WHERE `email` = '$email' "));
//-------------------------------------------------------------------------------
//// Fehlermeldungen
//-------------------------------------------------------------------------------
if(empty($anrede)) $fehler .= "<li>Das Feld 'Anrede' wurde nicht korrekt ausgefüllt!</li>";
if($check != "0") $fehler .= "<li>Es existiert bereits ein Eintrag mit dieser Email Adresse</li>";
if(empty($nachname)) $fehler .= "<li>Das Feld 'Nachname' wurde nicht korrekt ausgefüllt!</li>";
if(empty($vorname)) $fehler .= "<li>Das Feld 'Vorname' wurde nicht korrekt ausgefüllt!</li>";
if (
empty($gb_day) OR
empty($gb_month) OR
empty($gb_year) OR
!checkdate($gb_month,$gb_day,$gb_year)
) $fehler .= "<li>Das Feld 'Geburtsdatum' wurde nicht korrekt ausgefüllt oder ist ungültig!</li>";
if(empty($email) OR !strpos($email,"@")) $fehler .= "<li>Das Feld 'Email Adresse' wurde nicht korrekt ausgefüllt oder ist ungültig!</li>";
if(empty($ort)) $fehler .= "<li>Das Feld 'Ort' wurde nicht korrekt ausgefüllt!</li>";
if(empty($plz) OR !is_numeric($hnummer)) $fehler .= "<li>Das Feld 'PLZ' wurde nicht korrekt ausgefüllt!</li>";
if(empty($street)) $fehler .= "<li>Das Feld 'Strasse' wurde nicht korrekt ausgefüllt!</li>";
if(empty($hnummer) OR !is_numeric($hnummer))$fehler .= "<li>Das Feld 'Nr' wurde nicht korrekt ausgefüllt!</li>";
if(empty($bewerben)) $fehler .= "<li>Das Feld 'Wunsch Fire-Team' wurde nicht korrekt ausgefüllt!</li>";
if(empty($fehler)){
////-------------------------------------------------------------------------------
// Datenbankeintrag
////-------------------------------------------------------------------------------
$pid = db_result(db_query("SHOW TABLE STATUS FROM `". DBDATE ."` LIKE 'prefix_bewerben'"),0,'Auto_increment');
$explode = explode(".",$pic['name']);
$count = count($explode)-1;
$endung = $explode[$count];
$dExplode = explode(".",$data['name']);
$dCount = count($dExplode)-1;
$dEndung = $dExplode[$dCount];
$query = "
INSERT INTO `prefix_bewerben`
(
`id`,
`datetime`,
`anrede`,
`nachname`,
`vorname`,
`gb_day`,
`gb_month`,
`gb_year`,
`email`,
`ort`,
`plz`,
`street`,
`hnummer`,
`bewerben`,
`erfahrung`,
`equip`,
`info`,
`pic`,
`data`,
`bearbeiten`,
`akbewerbung`
)VALUES
(
'',
'".date("YmdHis")."',
'".$anrede."',
'".$nachname."',
'".$vorname."',
'".$gb_day."',
'".$gb_month."',
'".$gb_year."',
'".$email."',
'".$ort."',
'".$plz."',
'".$street."',
'".$hnummer."',
'".$bewerben."',
'".$erfahrung."',
'".$equip."',
'".$info."',
'img_norm_".$pid.".".$endung."',
'".$pid.".".$dEndung."',
'0',
'2'
)
";
//-------------------------------------------------------------------------------
/// Endung rausfiltern
//-------------------------------------------------------------------------------
$bild_norm = "include/images/lichtbild/img_norm_".$pid.".".$endung;
if(db_query($query)){
if(!empty($pic['name'])){
create_thumb ($pic['tmp_name'], $bild_norm , "250");
}
if(move_uploaded_file($data['tmp_name'], "include/downs/bewerbung/".$pid.".".$dEndung)){
}
wd("?bewerben","Bewerbung wurde erfolgreich gesendet!");
$design->footer(1);
}
}
}
if(isset($form)){
$abf = 'SELECT * FROM prefix_groups WHERE show_joinus = "1"'; // -3 ist member recht
$erg = db_query($abf);
$liste = "";
while($row = db_fetch_assoc($erg)) {
if($bewerben == $row['name']){
$select = "select='select'";
}
$liste .= "<option ".$select." value=\"".$row['name']."\">".$row['name']."</option>";
}
//-------------------------------------------------------------------------------
/// Variablen an HTML Datei übergeben.
//-------------------------------------------------------------------------------
$tpl->set('liste', $liste );
$tpl->set("FEHLER","<ul style=\"color: #ff0000;\">".$fehler."</ul>");
$tpl->set("anrede", $anrede);
$tpl->set("bewerben",$bewerben);
$tpl->set("ANREDE",$anrede);
$tpl->set("NACHNAME",$nachname);
$tpl->set("VORNAME",$vorname);
$tpl->set("DAY",$gb_day);
$tpl->set("MONTH",$gb_month);
$tpl->set("YEAR",$gb_year);
$tpl->set("ORT",$ort);
$tpl->set("PLZ",$plz);
$tpl->set("email",$email);
$tpl->set("STREET",$street);
$tpl->set("HNUMMER",$hnummer);
$tpl->set("BEWERBEN",$bewerben);
$tpl->set("ERFAHRUNG",$erfahrung);
$tpl->set("EQUIP",$equip);
$tpl->set("INFO",$info);
$tpl->out(1);
}
}
else{
$tpl->out(2);
}
$design->footer();
?>
include/admin/bewerben.php
<?php
// Autor: Sniper
// Support: www.ilch.de
function alter($day,$month,$year){
$rDay = date("d");
$rMonth = date("m");
$rYear = date("Y");
if($rMonth < $month OR $rMonth == $month AND $rDay < $day){
$gbDate = $rYear - $year-1;
}
else
{
$gbDate = $rYear - $year;
}
return $gbDate;
}
defined ('main') or die ( 'no direct access' );
defined ('admin') or die ( 'only admin access' );
$design = new design ( 'Admins Area', 'Admins Area', 2 );
$design->header();
$aktion = $menu->get(1);
$config_query = "SELECT * FROM `prefix_bewerben_config`";
$config = db_fetch_assoc(db_query($config_query));
//-------------------------------------------------------------------------------
/// Menüpunkte werden ausgelesen
//-------------------------------------------------------------------------------
$tpl = new tpl ('bewerben/menu', 1);
$tpl->out(0);
//-------------------------------------------------------------------------------
/// Menüpunkt zum Verwalten
//-------------------------------------------------------------------------------
if($aktion == "verwalten"){
$tpl = new tpl('bewerben/verwalten',1);
$select = escape($_POST['select'],'string');
$suchen = escape($_POST['suchen'],'string');
if(isset($_POST['submit']) AND !empty($_POST['suchen'])){
$where = "WHERE `".$select."` = '".$suchen."' ";
}
$tpl->set("suche",$suchen);
$tpl->out(0);
$query = "
SELECT * FROM `prefix_bewerben` ".$where." ORDER BY `vorname`
";
$sql = db_query($query);
if(db_num_rows($sql) != "0"){
while($row = db_fetch_object($sql)){
$row->class = ($i %2 == "0" ? $row->class = "Cmite" : $row->class = "Cnorm");
$row->alter = alter($row->gb_day,$row->gb_month,$row->gb_year);
$tpl->set_ar_out($row,1);
}
$tpl->out(3);
}else{
$tpl->out(2);
$tpl->out(3);
}
}
//-------------------------------------------------------------------------------
/// Einstellungen
//-------------------------------------------------------------------------------
elseif($aktion == "config"){
$tpl = new tpl('bewerben/config',1);
if(isset($_POST['submit'])){
$bzulassen = escape($_POST['bzulassen'],'string');
$akAbEmail = escape($_POST['akAbEmail'],'string');
$autoUser = escape($_POST['autoUser'],'string');
$emailAn = escape($_POST['emailAn'],'string');
$emailAb = escape($_POST['emailAb'],'string');
if(!empty($bzulassen) OR !empty($akAbEmail) OR !empty($autoUser) OR !empty($emailAn) OR !empty($emailAb)){
$query = "
UPDATE `prefix_bewerben_config` SET
`bzulassen` = '".$bzulassen."',
`akAbEmail` = '".$akAbEmail."',
`autoUser` = '".$autoUser."',
`emailAn` = '".$emailAn."',
`emailAb` = '".$emailAb."'
";
if(db_query($query)){
wd("?bewerben-config","Einstellungen wurden erfolgreich geändert!");
$design->footer(1);
}
}
}
$query = "
SELECT * FROM `prefix_bewerben_config`
";
$sql = db_query($query);
$row = db_fetch_object($sql);
$ar = array(
"fehler" => "Fehler",
"bzulassen" => $row->bzulassen,
"akAbEmail" => $row->akAbEmail,
"autoUser" => $row->autoUser,
"emailAn" => $row->emailAn,
"emailAb" => $row->emailAb
);
$tpl->set_ar_out($ar,0);
}
//-------------------------------------------------------------------------------
/// Details der Bewerbungen
//-------------------------------------------------------------------------------
elseif($aktion == "show"){
$tpl = new tpl('bewerben/show',1);
$id = $menu->get(2);
$query = "
SELECT
`vorname`,
`nachname`,
`email`,
`hnummer`,
`ort`,
`plz`,
`gb_day`,
`gb_month`,
`gb_year`,
`street`,
`data`,
`pic`,
`bewerben`,
`erfahrung`,
`equip`,
`info`,
`bearbeiten`,
`akbewerbung`,
DATE_FORMAT(datetime,'erstellt am %d.%m.%Y um %H:%i') AS date
FROM `prefix_bewerben` WHERE `id` = $id
";
$sql = db_query($query);
$row = db_fetch_object($sql);
$row->bear = ($row->bearbeiten == "0" ? $row->bearb = "Als Bearbeitet makieren" : $row->bearb = "Als unbearbeitet makieren");
//$row->bearb = ($row->bearb == "0" ? $row->bearb = "1" : $row->bearb = "0");
$row->alter = alter($row->gb_day,$row->gb_month,$row->gb_year);
$row->sid = $id;
$tpl->set_ar_out($row,0);
$aktion2 = $menu->get(3);
$id2 = $menu->get(4);
//-------------------------------------------------------------------------------
/// Bearbeitet Makierung ändern
//-------------------------------------------------------------------------------
$check = db_query("SELECT * FROM `prefix_bewerben` WHERE `id` = '".$id."'");
if($aktion2 == "bearbeitet" AND db_num_rows($check) != "0"){
if($id2 == "0"){
$up = "1";
}
else {
$up = "0";
}
echo $up;
$query = "UPDATE `prefix_bewerben` SET `bearbeiten` = '".$up."'";
if(db_query($query) OR die(mysql_error())){
wd("?bewerben-show-".$id,"Erfolgreich geändert!");
$design->footer(1);
}
else{
wd("?bewerben-show-".$id,"Es ist ein Fehler aufgetreten!",7);
$design->footer(1);
}
}
//-------------------------------------------------------------------------------
/// Aktion wenn Bewerbung ablehnen geklickt wird
//-------------------------------------------------------------------------------
if($aktion2 == "ablehnen"){
$row->emailAb = str_replace("%anrede%", $row->anrede, $row->emailAb);
$row->emailAb = str_replace("%vorname%",$row->vorname,$row->emailAb);
$row->emailAb = str_replace("%nachname%",$row->nachname,$row->emailAb);
db_query("UPDATE `prefix_bewerben` SET `bearbeiten` = '1', `akbewerbung` = '1' WHERE `id` = '$id'");
if($config['akAbEmail'] == "ja"){
if(icmail($row->email,"Bewerbungsschreiben",$config['emailAb'])){
wd("?bewerben-show-".$id,"An den Bewerber wurde eine Email gesendet, dass er nicht angenommen wurde!");
}
}
}
//-------------------------------------------------------------------------------
/// Aktion wenn Bewerbung annehmen geklickt wird
//-------------------------------------------------------------------------------
elseif($aktion2 == "annehmen"){
$query = "
SELECT
`vorname`,
`nachname`,
`email`,
`hnummer`,
`ort`,
`plz`,
`gb_day`,
`gb_month`,
`gb_year`,
`street`,
`data`,
`pic`,
`bewerben`,
`bearbeiten`,
UNIX_TIMESTAMP(`datetime`) AS date
FROM `prefix_bewerben` WHERE `id` = '".$id."'
";
$sql = db_query($query);
$row = db_fetch_object($sql);
$nick = $row->nachname;
//-------------------------------------------------------------------------------
/// Falls User Name schon Vorhanden gereriere einen Zufallsnamen
//-------------------------------------------------------------------------------
if(db_num_rows(db_query("SELECT * FROM `prefix_user` WHERE `name` = '".$nick."'")) != "0"){
$nick = $row->nachname.rand(1,99);
while($nick){
if(db_num_rows(db_query("SELECT * FROM `prefix_user` WHERE `name` = '".$nick."' ")) == 0){
break;
}else{
$nick = $row->nachname.rand(1,99);
}
}
}
$query = "
INSERT INTO `prefix_user`
(
`name`,
`pass`,
`regist`,
`recht`,
`email`,
`geschlecht`,
`gebdatum`,
`avatar`
)
VALUES
(
'".$nick."',
'".md5($row->vorname.$row->nachname)."',
'".$row->date."',
'-4',
'".$row->email."',
'".($row->anrede == "Herr" ? $row->anrede = "1" : $row->anrede = "2")."',
'".$row->gb_year.$row->gb_month.$row->gb_day."',
'include/image/lichtbild/".$row->pic."'
)
";
$row->emailAn = str_replace("%anrede%", $row->anrede, $row->emailAn);
$row->emailAn = str_replace("%vorname%",$row->vorname,$row->emailAn);
$row->emailAn = str_replace("%nachname%",$row->nachname,$row->emailAn);
if($config['akAbEmail'] == "ja"){
if($config['autoUser']){
$log = "\n\n";
// $log .= "Login Daten:\n";
// $log .= "Login Name: ".$nick."\n";
// $log .= "Login Passwort: ".$row->vorname.$row->nachname;
}
if(icmail($row->email,"Bewerbungsschreiben",$config['emailAn'].$log)){
$send = "ja";
if($config['autoUser'] == "nein"){
wd("?bewerben-show-".$id,"Der Bewerber wurde benachrichtigt!");
}
$text = " und der Bewerber wurde benachrichtigt";
}else{
$send = "nein";
}
}else{
$send = "ja";
}
$check = db_num_rows(db_query("SELECT * FROM `prefix_user` WHERE `email` = '".$row->email."'"));
if($check == "0"){
db_query("UPDATE `prefix_bewerben` SET `bearbeiten` = '1', `akbewerbung` = '0' WHERE `id` = '".$id."'");
}
if($config['autoUser'] == "ja" AND $send == "ja" ){
if($check == "0"){
if(db_query($query)){
wd("?bewerben-show-".$id,"User wurde erstellt$text!");
}
else{
wd("?bewerben-show-".$id,"Es ist ein Fehler aufgetreten!");
}
}else{
wd("?bewerben-show-".$id,"Ein User mit dieser Email Adresse existiert bereits!");
}
}
}
}
elseif($aktion == "del"){
$id = $menu->get(2);
$data = db_result(db_query("SELECT `data` FROM `prefix_bewerben` WHERE `id` = '".$id."'"));
$pic = db_result(db_query("SELECT `pic` FROM `prefix_bewerben` WHERE `id` = '".$id."'"));
$query = db_query("SELECT * FROM `prefix_bewerben` WHERE `id` = '".$id."'");
if(db_num_rows($query) != "0"){
if(file_exists("include/images/lichtbild/".$pic)){
unlink ("include/images/lichtbild/".$pic);
}
if(file_exists("include/images/downs/bewerbung/".$data)){
unlink ("include/images/downs/bewerbung/".$data);
}
$query = "
DELETE FROM `prefix_bewerben` WHERE `id` = '".$id."'
";
if(db_query($query)){
wd("?bewerben-verwalten","Eintrag wurde erfolgreich gelöscht!");
$design->footer(1);
}
else{
wd("?bewerben-verwalten","Es ist ein Fehler beim Löschen passiert!");
$design->footer(1);
}
}else{
wd("?bewerben-verwalten","Die Id existiert nicht!");
$design->footer(1);
}
}
//-------------------------------------------------------------------------------
/// Übersicht der Bewerbungen
//-------------------------------------------------------------------------------
else{
$tpl = new tpl('bewerben/uebersicht',1);
$tpl->out(0);
//-------------------------------------------------------------------------------
/// Datenbank auslesen für die 5 neusten Bewerber
//-------------------------------------------------------------------------------
$query = "SELECT * FROM `prefix_bewerben` ";
$where = "ORDER BY `datetime` LIMIT 5";
$sql = db_query($query.$where);
$check = db_query("SELECT * FROM `prefix_bewerben`");
$i = "1";
if(db_num_rows($check) != "0"){
while($row = db_fetch_object($sql)){
$row->class = ($i %2 == "0" ? $row->class = "Cmite" : $row->class = "Cnorm");
$row->alter = alter($row->gb_day,$row->gb_month,$row->gb_year);
$tpl->set_ar_out($row,1);
}
$tpl->out(3);
}else{
$tpl->out(2);
$tpl->out(3);
}
//-------------------------------------------------------------------------------
/// Bewerber aus der Datenbank auslesen die noch nicht Bearbeitet worden sind
//-------------------------------------------------------------------------------
$where = "WHERE `bearbeiten` = '0' ORDER BY `vorname`";
$sql = db_query($query.$where);
$check = db_query("SELECT * FROM `prefix_bewerben`".$where);
if(db_num_rows($check) != "0"){
while($row = db_fetch_object($sql)){
$row->class = ($i %2 == "0" ? $row->class = "Cmite" : $row->class = "Cnorm");
$row->alter = alter($row->gb_day,$row->gb_month,$row->gb_year);
$tpl->set_ar_out($row,4);
}
$tpl->out(6);
}else{
$tpl->out(5);
$tpl->out(6);
}
}
$design->footer();
?>
»Willst du den Charakter eines Menschen erkennen, so gib ihm Macht!«
(Abraham Lincoln)