<?
function my_mysqli_result($res,$crow,$field)
{
// Array definieren
$feldname=array();
// Anzahl der Zeilen/Datensätze der SQL-Abfrage ermitteln
$num_lines = mysqli_num_rows($res);
if ($num_lines < 1)
{
// es gibt keine Datensätze zum Anzeigen
return false;
}
// alle Namen der Tabellenfelder/Tabellenspalten im Array $feldname speichern
for ($i=0;$feldinfo=mysqli_fetch_field($res);$i++)
{
$feldname[$i]=$feldinfo->name;
}
// den Ergebniszeiger der SQL-Abfrage wieder zur ersten Tabellenspalte rücksetzen
mysqli_field_seek($res,0);
// die gewünschte Zeile d.h. den gewünschten Datensatz suchen
for ($i=0; $row = mysqli_fetch_row($res); $i++)
{
if ($i == $crow) // wenn der gewünschte Datensatz gefunden ist
{
// Anzahl der Spalte ermitteln
$anz_spalten=count($row);
// die gewünschte Spalte d.h. das gewünschte Tabellenfeld suchen
for ($j=0; $j<$anz_spalten;$j++)
{
if ($feldname[$j] == $field) // das gewünschte Tabellenfeld ist gefunden
{
// den Ergebniszeiger der SQL-Abfrage wieder zum ersten Datensatz rücksetzen
mysqli_data_seek($res,0);
// die Daten im Datensatz sind in derselben Reihenfolge wie
// die Namen der zuvor ermittelten Tabellenfelder. Daher kann
// der Wert des gewünschten Tabellenfeldes zurückgeliefert werden
return $row[$j];
}
}
}
}
// den Ergebniszeiger der SQL-Abfrage wieder zum ersten Datensatz rücksetzen
mysqli_data_seek($res,0);
// das gewünschte Tabellenfeld wurde nicht gefunden
return false;
}
function get_mysql_data(&$my_ip)
{
// Sicherheitsdaten inkludieren
include("../sec/data.php");
//Verbindung zum Datenbankserver aufbauen
$con=mysqli_connect("localhost",$hk_db,$hk_pw,"leiserberge_at");
if (!$con)
{
echo ("Verbindung zu DB-Server/Datenbank kann nicht hergestellt werden: ".mysqli_connect_error()."<br>");
return false;
}
mysqli_set_charset($con,"utf8");
// SQL-Abfragestring festlegen
// In der Tabell soll es nur genau einen Datensatz geben
$sqlab="select * from phpcode12 where id=1;";
// Datenbankabfrage starten
$res=mysqli_query($con,$sqlab);
if (!$res)
{
// Datenbankabfrage liefert kein Ergebnis
echo("Datenbankfehler: ".mysqli_error($con)."<br>");
return false;
}
$num=mysqli_num_rows($res);
if ($num > 1)
{
echo("Interner Programmfehler");
return false;
}
if ($num < 1)
{
echo("Interner Programmfehler");
return false;
}
// Defaultwerte der Parametervariablen auf einen Leerstring setzen
$my_ip = "";
// Daten aus der mySQL-DB auf die Parametervariablen setzen
$my_ip = my_mysqli_result($res,0,"ip");
return true;
}
function set_link(&$my_link, $my_ip)
{
switch($my_ip)
{
case "www.orf.at": // Weiterleitung durch Benutzer
$my_link="http://www.orf.at";
break;
case "www.tgm.ac.at": // Weiterleitung durch Benutzer
$my_link="http://www.tgm.ac.at";
break;
case "0.0.0.0": // Linux Server derzeit nicht erreichbar
$my_link="http://www.diewelt.de";
break;
default: // automatische Weiterleitung zum DB-eingetragenen Server
$my_link="http://".$my_ip;
break;
}
return true;
}
if (!get_mysql_data($ip))
{
// Datenbankfehler
return false;
}
if (!set_link($weiterleitung, $ip))
{
// Datenbankfehler
return false;
}
?>
<html>
<head>
<title>NO IP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="refresh" content="0;URL=<? echo $weiterleitung; ?>">
</head>
<body>
</body>
</html>