1
Hallo Jörg.
Ich habe mir eine Klasse für die Datenbank geschrieben, hier der Ausschnitt, der den nächsten Code betrifft:
Nun zum eigentlichen Problem: Ich habe einen Counter erstellt, in dem der IP einige Daten, wie z.B. die Zeit, der Username und die aktuelle Seite gespeichert werden. Doch bei der Seite liegt das Problem. Hier erstmal der Code aus der CounterKlasse.
Alles funktioniert und wird geupdated, nur das Feld "seite" bleibt immer leer. Wenn ich dort z.B. beim "UPDATE" folgendes mache:
Dann dachte ich natürlich, dass die Variable $Seite leer ist, ist sie aber nicht, weil wenn ich
Hier ein Beispiel, wie es funktioniert:
Ich weiß echt nichtmehr weiter.
Das Datenbankfeld ist eine VARCHAR(255).
PHP und MySQL Version: 5
MfG, Chris
Ich habe mir eine Klasse für die Datenbank geschrieben, hier der Ausschnitt, der den nächsten Code betrifft:
function Query ($Query)
{
if (($this->DataSetted == 1) AND ($this->Connected == 1))
{
$Sql = mysql_query($Query);
if ($Sql == false)
return mysql_error();
return $Sql;
}
else return false;
}
Nun zum eigentlichen Problem: Ich habe einen Counter erstellt, in dem der IP einige Daten, wie z.B. die Zeit, der Username und die aktuelle Seite gespeichert werden. Doch bei der Seite liegt das Problem. Hier erstmal der Code aus der CounterKlasse.
function Count ()
{
global $DB;
$QueryString = explode("&", $_SERVER["QUERY_STRING"]);
foreach ($QueryString as $Variable)
{
$Wert = explode("=", $Variable);
eval("$".$Wert[0]." = \"".$Wert[1]."\";");
}
$IP = IP();
$Row = $DB->Get("SELECT `zeit` FROM `counter` WHERE `ip` = '".$IP."'");
if ($_SESSION["Login"])
$Name = $_SESSION["Benutzername"];
else
$Name = "Gast";
if ($Row["zeit"] == 0)
$DB->Query("INSERT INTO `counter` (`zeit`, `ip`, `seite`, `tag`, `monat`, `jahr`, `name`) VALUES ('".time()."', '".$IP."', '".$Seite."', '".date("j")."', '".date("n")."', '".date("Y")."', '".$Name."')");
else
$DB->Query("UPDATE `counter` SET `zeit` = '".time()."', `seite` = '".$Seite."', `tag` = '".date("j")."', `monat` = '".date("n")."', `jahr` = '".date("Y")."', `name` = '".$Name."' WHERE `ip` = '".$IP."'");
}
Alles funktioniert und wird geupdated, nur das Feld "seite" bleibt immer leer. Wenn ich dort z.B. beim "UPDATE" folgendes mache:
$DB->Query("UPDATE `counter` SET `zeit` = '".time()."', `seite` = 'Little Test', `tag` = '".date("j")."', `monat` = '".date("n")."', `jahr` = '".date("Y")."', `name` = '".$Name."' WHERE `ip` = '".$IP."'");
Dann funktioniert es.Dann dachte ich natürlich, dass die Variable $Seite leer ist, ist sie aber nicht, weil wenn ich
echo $Seite;
eingebe, wird die Seite richtig angezeigt.Hier ein Beispiel, wie es funktioniert:
$QueryString = explode("&", $_SERVER["QUERY_STRING"]);
foreach ($QueryString as $Variable)
{
$Wert = explode("=", $Variable);
eval("$".$Wert[0]." = \"".$Wert[1]."\";");
}
echo $Seite;
Ich weiß echt nichtmehr weiter.
Das Datenbankfeld ist eine VARCHAR(255).
PHP und MySQL Version: 5
MfG, Chris