php/heslo/lib/funkce.inc.php
author František Kučera <franta-hg@frantovo.cz>
Wed May 06 13:12:03 2009 +0200 (2009-05-06)
changeset 12 38aadc7c6386
parent 11 c1fd9aa6a6af
child 13 119744ae4179
permissions -rwxr-xr-x
Licence AGPLv3, Vyhození zbytečných hlaviček z HTML, aktuální verze schématu, .htaccess (kvůli escapování)
     1 <?php
     2 
     3 require('nastaveni.php');
     4 
     5 $zacatek = getMicrotime();
     6 
     7 function exception_handler($exception) {
     8   html("Došlo k chybě: " . $exception->getMessage());
     9   //header("Location: chyba_db.php");
    10   exit();
    11 }
    12 
    13 set_exception_handler('exception_handler');
    14 
    15 
    16 if (empty($_SERVER['HTTP_ACCEPT'])) {
    17 	$mimeTyp = 'application/xhtml+xml';
    18 } else {
    19 	$mimeTyp = (( stristr( $_SERVER['HTTP_ACCEPT'], 'application/xhtml+xml' ) && !preg_match("/application\/xhtml\+xml;\s*q=0(\.0)?\s*(,|$)/",$_SERVER['HTTP_ACCEPT']) ) ? 'application/xhtml+xml' : 'text/html' );
    20 }
    21 header("Content-Type: $mimeTyp");
    22 
    23 /** $nadpis = titulek stránky + h1 */
    24 function zahlavi($nadpis) {
    25 	global $mimeTyp;
    26 	
    27 	html('<?xml version="1.0" encoding="UTF-8"?>
    28 <!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    29 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">
    30   <head>
    31     <meta http-equiv="content-language" content="cs"/>
    32     <meta http-equiv="content-type" content="' . $mimeTyp . '; charset=UTF-8"/>
    33     <meta name="GOOGLEBOT" content="NOINDEX, NOFOLLOW"/>
    34     <meta name="ROBOTS" content="NOINDEX, NOFOLLOW"/>
    35     <link href="styl.css" type="text/css" rel="StyleSheet"/>
    36     <title>' . $nadpis . '</title>
    37   </head>
    38   <body>  
    39 <h1>' . $nadpis . '</h1>');
    40 }
    41 
    42 function zapati() {
    43     html('</body>');
    44     htmlInfoKomentar();
    45     html('</html>');
    46 }
    47 
    48 function htmlInfoKomentar() {	
    49 	global $zacatek, $mimeTyp, $NASTAVENI;
    50 	$konec = getMicrotime();
    51 	html('<!--');
    52 	html('Stránka: ' . $_SERVER['REQUEST_URI']);
    53 	html('Klient:  ' . $_SERVER['REMOTE_ADDR']);
    54 	html('MIME:    ' . $mimeTyp);
    55 	html("Začátek zpracování: $zacatek");
    56 	html("Konec zpracování:   $konec");
    57 	html('Doba zpracování:    ' . ($konec - $zacatek) . 's');	
    58 	html('-->');
    59 }
    60 
    61 function htmlOdstavec($text) {
    62 	html("<p>\n$text\n</p>");
    63 }
    64 
    65 function html($text) {	
    66 	global $stranka;	
    67 	/** Odstraníme odkazy, které vedou na tutéž stránku */
    68 	$text = str_replace(' href="' . $stranka . '"', '', $text);
    69 	
    70 	echo("$text\n");
    71 }
    72 
    73 function htmlZnacka($znacka, $text) {
    74 	html("<$znacka>$text</$znacka>");
    75 }
    76 
    77 function htmlTlacitkovyOdkaz($url, $text) {
    78 	html('<form action="' . $url . '"><fieldset><button>' . $text . '</button></fieldset></form>');
    79 }
    80 
    81 function sqlZjistiHodnotu($dotaz, $parametry = null) {
    82 	global $db;
    83 	
    84 	$dotaz = $db->prepare($dotaz);
    85 	
    86 	if ($parametry != null) {
    87 		for($i = 0; $i < count($parametry); $i++) {
    88 			$dotaz->bindParam($i+1, $parametry[$i]);
    89 		}
    90 	}
    91 	
    92 	$dotaz->execute();
    93 	$r = $dotaz->fetchAll();
    94 	
    95 	foreach ($r as $x) {
    96 		return $x[0];		
    97 	}
    98 	return null;
    99 }
   100 
   101 function getMicrotime(){
   102    list($usec, $sec) = explode(" ",microtime());
   103    return ((float)$usec + (float)$sec);
   104 } 
   105 
   106 function logujChybu($popis, $chyba = null) {
   107 	htmlOdstavec($popis);
   108 }
   109 
   110 ?>