Subversion Repositories personal-webbase

Rev

Rev 4 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <?php
  2.  
  3. if (!defined('WBLEGAL')) die('Kann nicht ohne Personal WebBase ausgef&uuml;hrt werden.');
  4.  
  5. // TODO: integrate these functions in our db_*() function wrappers
  6. require __DIR__.'/mysql_replacement.inc.php';
  7.  
  8. if (isset($mysql_zugangsdaten['port']) && ($mysql_zugangsdaten['port'] != ''))
  9.   $zus = ':'.$mysql_zugangsdaten['port'];
  10. else
  11.   $zus = '';
  12.  
  13. function db_connect()
  14. {
  15.   global $mysql_zugangsdaten;
  16.   global $ib_selc;
  17.   global $ib_conn;
  18.  
  19.   try {
  20.     if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  21.     {
  22.       $ib_conn = @mysqli_connect($mysql_zugangsdaten['server'].$zus, $mysql_zugangsdaten['username'], $mysql_zugangsdaten['passwort']);
  23.       $ib_selc = @mysqli_select_db($mysql_zugangsdaten['datenbank'], $ib_conn);
  24.     }
  25.     else
  26.     {
  27.       $ib_conn = @mysql_connect($mysql_zugangsdaten['server'].$zus, $mysql_zugangsdaten['username'], $mysql_zugangsdaten['passwort']);
  28.       $ib_selc = @mysql_select_db($mysql_zugangsdaten['datenbank'], $ib_conn);
  29.     }
  30.   } catch (Exception $e) {
  31.     die('<h1>Fehler</h1>Datenbankverbindung kann nicht hergestellt werden. Bitte pr&uuml;fen Sie die Datei config.inc.php.<br><br>'.$e);
  32.   }
  33.  
  34.   if ((!$ib_selc) || (!$ib_conn))
  35.     die('<h1>Fehler</h1>Es konnte keine Verbindung zu dem Datenbankserver hergestellt werden.<br><br>Bitte pr&uuml;fen Sie den Serverstatus und die G&uuml;ltigkeit der Konfigurationsdatei &quot;includes/config.inc.php&quot;.<br><br>MySQL meldet folgendes:<br><br><code>'.mysql_errno().': '.mysql_error().'</code>');
  36. }
  37.  
  38. function db_query($inp, $halte_an_bei_fehler = true)
  39. {
  40.   global $konfiguration;
  41.   global $sql_transkript;
  42.   global $mysql_zugangsdaten;
  43.  
  44.   $sql_transkript .= $inp."\n";
  45.  
  46.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  47.     $x = @mysqli_query($inp);
  48.   else
  49.     $x = @mysql_query($inp);
  50.  
  51.   if ($halte_an_bei_fehler)
  52.   {
  53.     if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  54.       $e = @mysqli_error();
  55.     else
  56.       $e = @mysql_error();
  57.  
  58.     if ($e != '')
  59.     {
  60.       $mess = '<b>MySQL-Fehler!</b><br><br>Folgender MySQL-Fehler ist aufgetreten:<br><br><code>'.$e.'</code><br><br>Folgende Query wurde ausgef&uuml;hrt:<br><br><code>'.my_htmlentities($inp).'</code><br><br>Die Scriptausf&uuml;hrung wurde aus Sicherheitsgr&uuml;nden abgebrochen.';
  61.  
  62.       global $modul;
  63.       global $m2;
  64.  
  65.       $m = '';
  66.  
  67.       if ((isset($modul)) && ($modul != ''))
  68.         $m = $modul;
  69.       else
  70.         $m = '';
  71.  
  72.       if ((isset($m2)) && ($m2 != ''))
  73.       {
  74.         if ($m2 == '')
  75.           $z = $m2.'?';
  76.         else
  77.           $z = ' ('.$m2.'?)';
  78.       }
  79.       else
  80.       {
  81.         $z = '';
  82.       }
  83.  
  84.       if (function_exists('fehler_melden')) fehler_melden($m.$z, $mess);
  85.  
  86.       die($mess);
  87.     }
  88.   }
  89.  
  90.   return $x;
  91. }
  92.  
  93. function db_fetch($inp)
  94. {
  95.   global $mysql_zugangsdaten;
  96.  
  97.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  98.     return @mysqli_fetch_array($inp);
  99.   else
  100.     return @mysql_fetch_array($inp);
  101. }
  102.  
  103. function db_escape($inp)
  104. {
  105.   global $mysql_zugangsdaten;
  106.  
  107.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  108.     return @mysqli_real_escape_string($inp);
  109.   else
  110.     return @mysql_real_escape_string($inp);
  111. }
  112.  
  113. function db_simple_escape($inp)
  114. {
  115.   global $mysql_zugangsdaten;
  116.  
  117.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  118.     return @mysqli_escape_string($inp);
  119.   else
  120.     return @mysql_escape_string($inp);
  121. }
  122.  
  123. function db_num($inp)
  124. {
  125.   global $mysql_zugangsdaten;
  126.  
  127.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  128.     return @mysqli_num_rows($inp);
  129.   else
  130.     return @mysql_num_rows($inp);
  131. }
  132.  
  133. function db_affected_rows()
  134. {
  135.   global $mysql_zugangsdaten;
  136.  
  137.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  138.     return @mysqli_affected_rows();
  139.   else
  140.     return @mysql_affected_rows();
  141. }
  142.  
  143. function db_list_dbs()
  144. {
  145.   global $mysql_zugangsdaten;
  146.  
  147.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  148.     return @mysqli_list_dbs();
  149.   else
  150.     return @mysql_list_dbs();
  151. }
  152.  
  153. function db_list_tables($db)
  154. {
  155.   global $mysql_zugangsdaten;
  156.  
  157.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  158.     return @mysqli_list_tables($db);
  159.   else
  160.     return @mysql_list_tables($db);
  161. }
  162.  
  163. function db_error()
  164. {
  165.   global $mysql_zugangsdaten;
  166.  
  167.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  168.     return @mysqli_error();
  169.   else
  170.     return @mysql_error();
  171. }
  172.  
  173. function db_disconnect()
  174. {
  175.   global $mysql_zugangsdaten;
  176.   @session_write_close();
  177.  
  178.   if (((isset($mysql_zugangsdaten['use_mysqli'])) && ($mysql_zugangsdaten['use_mysqli'])))
  179.     @mysqli_close();
  180.   else
  181.     @mysql_close();
  182. }
  183.  
  184. register_shutdown_function('db_disconnect');
  185. db_connect();
  186.  
  187. ?>
  188.