php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Counterprob


 
dani_o
06-12-2005, 19:31 
 
<?php
$actuell_date=date("d.m.Y");
$ip=getenv("REMOTE_ADDR");

$result = mysql_query
("SELECT * FROM daphp_counter");
while ($row = mysql_fetch_array ($result)) {
$view=$row[1];
$klick=$row[0];
$tab_date=$row[4];
$gesamt=$row[3];
}

$view_new=$view+1;

if($tab_date==$actuell_date){}
else{
$gestern=$view;
$gesamt=$gesamt+$view;
mysql_query("UPDATE daphp_counter SET
time='$actuell_date',view='0',gesamt='$gesamt',gestern='$gestern'");
mysql_query("TRUNCATE TABLE daphp_count_ip");
}

$result = mysql_query
("SELECT * FROM daphp_count_ip");
while ($row = mysql_fetch_array ($result)) {
if($ip==$row[1]){$insert_ip=true;}
}

if($insert_ip==true){}
else{
$time_stamp=date("d.m.Y");
mysql_query
("INSERT INTO daphp_count_ip (ip,time) VALUES ('$ip','$time_stamp')");
mysql_query
("UPDATE daphp_counter SET view='$view_new'");
}



$klick=$klick+1;
mysql_query("UPDATE daphp_counter SET klick='$klick'");

$result = mysql_query("SELECT * FROM daphp_counter");
while ($row = mysql_fetch_array ($result)) {
$new_view=$row[1];
$new_klicks=$row[0];
$new_gestern=$row[2];
$new_gesamt=$row[3];
}
?>


Bin ich blind? Wieos gibt der mir nix aus? Büdde um Hilfe!

So, (r)umgebrochen ... :D

 
thommyk
06-12-2005, 19:48 
 
1.Brich bitte Deinen Code um, der ist zu breit!
2. Was soll denn in Deinem Skript passieren?
3. Du hast schon mal von WHERE bedingung in Sql-Abfragen gehört?
Damit kann man nämlich EINZELNE Datensätze selektieren, anstatt sinnlos durch eine while-Schleifen zu laufen, wie z.B.
while ($row = mysql_fetch_array ($result)) {
$view=$row[1];
$klick=$row[0];
$tab_date=$row[4];
$gesamt=$row[3];
} Das ist absoluter Unsinn, es sei denn Du hättest nur einen Datensatz in der Tabelle und selbst dann ist while-Schleife überflüssig :confused:

 
dani_o
06-12-2005, 19:53 
 
iss nur ein datensatz, es müsste aber trotzdem ne ausgabe kommen!

 
hhcm
06-12-2005, 19:53 
 
Das ist absoluter Unsinn, es sei denn Du hättest nur einen Datensatz in der Tabelle und selbst dann ist while-Schleife überflüssig

............ denn du würdest alles immer wieder überschreiben.. (musste jetz sein :) )

 
dani_o
06-12-2005, 19:55 
 
Was immer noch nicht erklären würde, wieso ich keine ausgabe bekomme ...

 
hhcm
06-12-2005, 19:55 
 
Änder mal


$result = mysql_query(...);

// in

$result = mysql_query(...) or die(mysql_error());

 
thommyk
06-12-2005, 20:04 
 
Original geschrieben von dani_o
Was immer noch nicht erklären würde, wieso ich keine ausgabe bekomme ...

ein echo oder print_r sehe ich auch nicht, oder bin ich blind?
Oder hast Du den Ausgabeteil nicht gepostet?

 
dani_o
06-12-2005, 20:05 
 
Das Prob mit der Datenbank ist nu gelöst, ich krieg aba keine ausgabe!

 
hhcm
06-12-2005, 20:06 
 
Original geschrieben von thommyk
ein echo oder print_r sehe ich auch nicht, oder bin ich blind?
Oder hast Du den Ausgabeteil nicht gepostet?

Ups... :D

Stimmt.. Das sollte man doch noch benutzen um einen Counter zu sehen.... :goth:


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:52 Uhr.