All pastes #640732 Raw Edit

alfie

public php v1 · immutable
#640732 ·published 2007-07-31 16:43 UTC
rendered paste body
<?php/*****************************************************************************	Datei				: kunden.php*	Erstellt			: 27.07.2007 14:51:19 by Daniel Ceballos*	Copyright			: (C) 2007 Basecom-GmbH www.basecom-gmbh.de*****************************************************************************/ /*****************************************************************************	Grundfunktion:*	- Listet die Kunden auf, mit Optionen zur Detailanzeige, *	  Optionen oder Bearbeiten****************************************************************************//* * $option cases * 0 - Kundenliste anzeigen * 1 - Kundendetails anzeigen  * 2 - Kunden hinzufügen  * 3 - Kunden bearbeiten * 4 - Kunden entfernen *  */// Einstellungen$root_path = "";// Konfigurationen einbindenrequire($root_path . 'includes/common.php');// Breadcrumb setzen$breadcrumb[] = array('link' => 'kunden.php', 'name' => 'Kunden');/*// CSS Dateien$template->assign('styles', array(	'styles_admin2.css'));*/$option = (isset($_GET['option'])) ? $_GET['option'] : 0;switch ($option) {	case 0:	// Zeigt die Kundenliste an				// Template File die geladen werden soll		$template_file = "kunden_kundenliste.tpl";				// Breadcrumb setzen		$breadcrumb[] = array('link' => '?option=0', 'name' => 'Kundenliste');		// Kundensortierung SQL Query Zusatz		$sortlink = (strtolower($_GET['sort']) == "desc") ? "asc" : "desc";		if (isset($_GET['sort']) && isset($_GET['order'])) {			$kundensort = " ORDER BY " . $_GET['order'] . " " . strtoupper($_GET['sort']);		} else { // end if			$kundensort = " ORDER BY knr DESC";		} // end else		// wieviele seiten sind möglich		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['firmen'] . "`";		$result = $db->sql_query($sql);		$daten = $db->sql_fetchrow($result); 		$available_entries = $daten['total'];		require_once($root_path . 'includes/classes/pager.class.php');		$npg = new pager(20, $available_entries, $_GET, 4, "page", $_GET["page"]);		$npg->get_array = $_GET;		// Datenbank Query um Kundeninformationen aus der Datenbank zu ermitteln		$sql = "SELECT knr AS kundennummer," .				"id AS kundenid," .				"fname AS kundenname," .				"fzusatz AS kundenzusatz," .				"ort AS kundenort," .				"tel AS telefon," .				"fax AS telefax," .				"email AS kundenmail FROM `" . $db_table['firmen'] . "`" . $kunden_statement . $kundensort . $npg->sql_addit;		$result = $db->sql_query($sql);		$daten = $db->sql_fetchrowset($result); 				// Template-Variablen setzen		$template->assign('kunden', $daten);		$template->assign('sortlink', $sortlink);		$template->assign('pagelinks', $npg->grab_links);		$template->assign('avpages', $npg->pages_available);				break;	case 1:	// Zeigt Kundendetails an				// Variable mit ID (int) deklarieren		$firmen_id = intval($_GET['id']);				// Template File die geladen werden soll		$template_file = "kunden_kundendetails.tpl";				// Anprechpartner		$sql = "SELECT * FROM `" . $db_table['kontakte'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$ansprechpartner = $db->sql_fetchrow($result);				// Verträge zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['vertraege'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$vertraege = $item['total'];				// Briefe zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['log'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$briefe = $item['total'];				// Rechnungen zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['rechnung'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$rechnungen = $item['total'];						// Mahnungen zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['mahnungen'] . "` AS m, `" . $db_table['rechnung'] . "` AS r WHERE r.belongsto = '" . $firmen_id . "' AND m.rechnung_id = r.id";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$mahnungen = $item['total'];				// Aufträge zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['auftrag'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$auftraege = $item['total'];				// Angebote zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['angebot'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$angebote = $item['total'];		// Gutschriften zählen		$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['gutschrift'] . "` WHERE belongsto = '" . $firmen_id . "'";		$result = $db->sql_query($sql);		$item = $db->sql_fetchrow($result);		$gutschriften = $item['total'];		// Kundendaten ermitteln		$sql = "SELECT knr AS kundennummer," .				"anrede," .				"id AS kundenid," .				"fname AS kundenname," .				"fzusatz AS kundenzusatz," .				"strasse AS kundenstr," .				"plz AS kundenplz," .				"ort AS kundenort," .				"tel AS telefon," .				"fax AS telefax," .				"email AS kundenmail," .				"url AS kundenurl," .				"kommentar,datum FROM `" . $db_table['firmen'] . "` WHERE id = '" . $firmen_id . "'";		$result = $db->sql_query($sql, __FILE__, __LINE__);		$daten = $db->sql_fetchrow($result);				foreach ($daten as $key => $value) {			$items[$key] = str_replace("\n", "<br />", $value);		} // end foreach				// Speichert weitere assoziative Daten in das Array $daten		array_push_assoc($items,			array('count_vertraege' 	=> $vertraege),			array('count_briefe' 		=> $briefe),			array('count_rechnungen' 	=> $rechnungen),			array('count_mahnungen' 	=> $mahnungen),			array('count_auftraege' 	=> $auftraege),			array('count_angebote' 		=> $angebote),			array('count_gutschriften' 	=> $gutschriften)		);				// Template-Variablen setzen		$template->assign('kunden', $items);				// Breadcrumb setzen		$breadcrumb[] = array('link' => '?option=1&id=' . $firmen_id, 'name' => 'Kundendetails zu: ' . $daten['kundenname']);				break;	case 2:	// neuen Kunden hinzufügen Formular				// Template File die geladen werden soll		$template_file = "kunden_kundenformular.tpl";				// Submit bezeichnung		$submit			= 'Kunde hinzuf&uuml;gen';		// nachdem formular abgesendet wurde		if (!empty($_GET['absenden'])) {						// Formvars erstellen aus $_POST-Objekten			$strip_var_list = array('kundennummer','kundenname','kundenzusatz','kundenstr','kundenplz','kundenort','kundentel','kundenfax','anrede','kundenmail','kundenurl','kommentar');			while ( list($var, $param) = @each($strip_var_list) ) {				if ( isset($_POST[$param]) ) {					$$param = strip_tags(trim($_POST[$param]));				} // end if			} // end while			// pflichtangaben prüfen			if (empty($kundenname))				$error[] = "Es wurde kein Name für den Kunden angegeben.";							if (empty($kundentel))				$error[] = "Es wurde keine Telefonnummer angegeben.";							// prüfen ob die kundennummer schon vorhanden ist			if (!empty($kundennummer)) {								$sql = "SELECT COUNT(*) AS total FROM `" . $db_table['firmen'] . "` WHERE knr = '" . $kundennummer . "'";				$result = $db->sql_query($sql);				$daten = $db->sql_fetchrow($result);				if ($item['total'])					$error[] = "Es ist bereit ein Kunde mit dieser Kundennummer vorhanden.";			} // end if						// wenn kein Fehler vorhanden ist			if (!isset($error)) {								// lege Datensatz in der Datenbank an				$sql = "INSERT INTO `" . $db_table['firmen'] . "` (" .						"knr,anrede,fname,fzusatz,strasse,plz,ort,tel,fax,email,url,kommentar,datum) " .						"VALUES ('" . $kundennummer . "', '" . $anrede . "', '" . $kundenname . "', '" . $kundenzusatz . "', '" . $kundenstr . "'" .						", '" . $kundenplz . "', '" . $kundenort . "', '" . $kundentel . "', '" . $kundenfax . "', '" . $kundenmail . "'" .						", '" . $kundenurl . "', '" . $kommentar . "', '" . $datum . "')";								$result = $db->sql_query($sql);								// Weiterleitung				if ($new_customer_id = $db->sql_nextid()) {					header('Location: ?option=1&id=' . $new_customer_id);				} // end if							} // end if					} // end if				// aktuelle neuste kundennummer ermitteln		$sql = "SELECT knr FROM `" . $db_table['firmen'] . "` ORDER BY knr DESC LIMIT 0,1";		$result  = $db->sql_query($sql);		$daten = $db->sql_fetchrow($result);		$kundennummer = $daten['knr'] + 1;		$formular = array(			'formmethod' => 'post',			'formaction' => '?option=2&amp;absenden=1',			'kundennummer' 	=> array('name' => 'kundennummer', 	'value' => $kundennummer,	'required' => 0), // Kundennummer			'kundenname' 	=> array('name' => 'kundenname', 	'value' => $kundenname,		'required' => 0), // Firmenname			'kundenzusatz'	=> array('name' => 'kundenzusatz', 	'value' => $kundenzusatz,	'required' => 0), // Firmenname			'kundenstr' 	=> array('name' => 'kundenstr', 	'value' => $kundenstr, 		'required' => 0), // Firmenstraße + Hausnummer			'kundenplz' 	=> array('name' => 'kundenplz', 	'value' => $kundenplz, 		'required' => 0), // Postleitzahl			'kundenort' 	=> array('name' => 'kundenort', 	'value' => $kundenort,	 	'required' => 0), // Ort			'kundentel' 	=> array('name' => 'kundentel', 	'value' => $kundentel, 		'required' => 0), // Telefon			'kundenfax' 	=> array('name' => 'kundenfax', 	'value' => $kundenfax, 		'required' => 0), // Telefax			'anrede'	 	=> array('name' => 'anrede', 		'value' => $anrede, 		'required' => 0), // Ansprechpartner			'kundenmail'	=> array('name' => 'kundenmail', 	'value' => $kundenmail, 	'required' => 0), // Kunden E-Mail			'kundenurl'		=> array('name' => 'kundenurl', 	'value' => $kundenurl, 		'required' => 0), // Kunden URL			'kommentar'		=> array('name' => 'kommentar', 	'value' => $kommentar, 		'required' => 0), // Kommentar			'submit' 		=> array('name' => 'newcustomer', 	'value' => $submit,			'required' => 0), // Absenden		);				// Template-Variablen setzen		$template->assign('kform', $formular);		// Breadcrumb setzen		$breadcrumb[] = array('link' => '?option=2', 'name' => 'Neuen Kunden hinzuf&uuml;gen');				break;	case 3:	// Bearbeiten Formular				// Template File die geladen werden soll		$template_file = "kunden_kundenformular.tpl";				// Submit bezeichnung		$submit			= 'Kunde bearbeiten';				// Variable mit ID (int) deklarieren		$firmen_id = intval($_GET['id']);		// formular absenden		if (!empty($_GET['absenden'])) {						// Formvars erstellen aus $_POST-Objekten			$strip_var_list = array('kundennummer','kundenname','kundenzusatz','kundenstr','kundenplz','kundenort','kundentel','kundenfax','anrede','kundenmail','kundenurl','kommentar','kundenid');			while ( list($var, $param) = @each($strip_var_list) ) {				if ( isset($_POST[$param]) ) {					$$param = strip_tags(trim($_POST[$param]));				} // end if			} // end while						// pflichtangaben prüfen			if (empty($kundenname))				$error[] = "Es wurde der Firmenname geändert und es ist kein gültiger Wert vorhanden.";							if (empty($kundentel))				$error[] = "Es wurde keine Telefonnummer angegeben.";							// wenn kein Fehler vorhanden ist			if (!isset($error)) {								// lege Datensatz in der Datenbank an				$sql = "UPDATE `" . $db_table['firmen'] . "` " .						"SET knr = '" 	. $kundennummer . "'," .						"anrede = '" 	. $anrede . "'," .						"fname = '" 	. $kundenname . "'," .						"fzusatz = '" 	. $kundenzusatz . "'," .						"strasse = '" 	. $kundenstr . "'," .						"plz = '" 		. $kundenplz . "'," .						"ort = '" 		. $kundenort . "'," .						"tel = '" 		. $kundentel . "'," .						"fax = '" 		. $kundenfax . "'," .						"email = '" 	. $kundenmail . "'," .						"url = '" 		. $kundenurl . "'," .						"kommentar = '" . $kommentar . "' WHERE id = '" . $kundenid . "'";								if($result = $db->sql_query($sql)) {					header('Location: ?option=1&id=' . $kundenid);				} // end if							} // end if				} // end if				// aktuelle kundendaten ermitteln		$sql = "SELECT knr AS kundennummer," .				"fname AS kundenname," .				"fzusatz AS kundenzusatz," .				"strasse AS kundenstr," .				"plz AS kundenplz," .				"ort AS kundenort," .				"tel AS kundentel," .				"fax AS kundenfax," .				"email AS kundenmail," .				"url AS kundenurl," .				"id AS kundenid," .				"kommentar,datum,anrede FROM `" . $db_table['firmen'] . "` WHERE id = '" . $firmen_id . "'";		$result  = $db->sql_query($sql);		$daten = $db->sql_fetchrow($result);				foreach ( $daten as $key => $value ) {			$$key = $value;		} // end foreach				$formular = array(			'formmethod' 	=> 'post',			'formaction' 	=> '?option=3&amp;id=' . $firmen_id . '&amp;absenden=1',			'kundenid' 		=> array('name' => 'kundenid', 		'value' => $kundenid,		'required' => 0), // Kundennummer			'kundennummer' 	=> array('name' => 'kundennummer', 	'value' => $kundennummer,	'required' => 0), // Kundennummer			'kundenname' 	=> array('name' => 'kundenname', 	'value' => $kundenname,		'required' => 0), // Firmenname			'kundenzusatz'	=> array('name' => 'kundenzusatz', 	'value' => $kundenzusatz,	'required' => 0), // Firmenzusatz			'kundenstr' 	=> array('name' => 'kundenstr', 	'value' => $kundenstr, 		'required' => 0), // Firmenstraße + Hausnummer			'kundenplz' 	=> array('name' => 'kundenplz', 	'value' => $kundenplz, 		'required' => 0), // Postleitzahl			'kundenort' 	=> array('name' => 'kundenort', 	'value' => $kundenort,	 	'required' => 0), // Ort			'kundentel' 	=> array('name' => 'kundentel', 	'value' => $kundentel, 		'required' => 0), // Telefon			'kundenfax' 	=> array('name' => 'kundenfax', 	'value' => $kundenfax, 		'required' => 0), // Telefax			'anrede'	 	=> array('name' => 'anrede', 		'value' => $anrede, 		'required' => 0), // Ansprechpartner			'kundenmail'	=> array('name' => 'kundenmail', 	'value' => $kundenmail, 	'required' => 0), // Kunden E-Mail			'kundenurl'		=> array('name' => 'kundenurl', 	'value' => $kundenurl, 		'required' => 0), // Kunden URL			'kommentar'		=> array('name' => 'kommentar', 	'value' => $kommentar, 		'required' => 0), // Kommentar			'submit' 		=> array('name' => 'editcustomer', 	'value' => $submit,			'required' => 0), // Absenden		);				// Template-Variablen setzen		$template->assign('kform', $formular);		// Breadcrumb setzen		$breadcrumb[] = array('link' => '?option=3&amp;id=' . $kundenid, 'name' => 'Kunde "' . $kundenname . '" bearbeiten');				break;	case 4:	// Entfernen Formular} // end switch $optionrequire_once($root_path . 'includes/page_header.php');$template->display( $template_file ); require_once($root_path . 'includes/page_footer.php');?>