10. februar 2008 - 01:29Der er
16 kommentarer og 1 løsning
den indsætter ikke i databasen
hey all
jeg har fundet dette script her på siden, men den virker ikke :(
den vil ikke indsætte i databasen
<? //jeg regner med at du selv lige kan finde //ud af at connecte til databasen //ellers må du lige sige til /* CREATE TABLE `counter` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, `date` VARCHAR(255) NOT NULL, `ip` VARCHAR(15) NOT NULL ); */
det er sådan det ser ud nu : <?php mysql_connect("localhost","xxxx","xxxx"); mysql_select_db("xxxxxx"); $IP = $_SERVER["REMOTE_ADDR"]; $dato = date("d.m.y", time());
function checkIP() { $IP = $_SERVER["REMOTE_ADDR"]; $dato = date("d", time()); $sql = mysql_query("SELECT count(*) AS num_rows FROM counter WHERE ip='$IP' AND date='$dato'"); return mysql_result($sql, 0); } if(checkIP() == "0") { mysql_query("INSERT INTO counter (ip,date,ip) VALUES ('$IP','$dato')"); } function countDay() { $sql = mysql_query("SELET count(*) AS num_rows FROM counter WHERE date='$dato'"); return mysql_result($sql, 0); } function countTotal() { $sql = mysql_query("SELECT count(*) AS num_rows FROM counter"); } echo'Besøgende idag: '.countDay().''; echo'<br>'; echo'Besøgende ialt: '.countTotal().''; ?>
Ret mysql_query("INSERT INTO counter (`ip`,`date`,`ip`) VALUES ('','$dato','$ip')"); til mysql_query("INSERT INTO counter (`id`,`date`,`ip`) VALUES ('','$dato','$ip')") or die(mysql_error());
Ret: function countDay() { $sql = mysql_query("SELECT count(*) AS num_rows FROM counter WHERE date='$dato'"); return mysql_result($sql, 0); } til: function countDay() { global $dato; $sql = mysql_query("SELECT count(*) AS num_rows FROM counter WHERE date='$dato'"); return mysql_result($sql, 0); }
Ret: mysql_query("INSERT INTO counter (`id`,`date`,`ip`) VALUES ('','$dato','$ip')") or die(mysql_error()); til: mysql_query("INSERT INTO counter (`id`,`date`,`ip`) VALUES ('','$dato','$IP')") or die(mysql_error());
weeeeeheeeee nu tæller den begger steder :D men kan man gøre sådan at den ikke tæller den samme ip evt så den ikke opdatere tællet bare ved at jeg trykker "F5" ?
Du kan jo lave et tjek, hvor den kun indsætter i databasen max en om dagen for hver ip. Så skal du nok rette: function checkIP() { global $IP; global $dato; $sql = mysql_query("SELECT count(*) AS num_rows FROM counter WHERE ip='$IP' AND date='$dato'"); return mysql_result($sql, 0); }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.