Avatar billede magnus_madsen Nybegynder
22. januar 2001 - 20:29 Der er 3 kommentarer og
1 løsning

Hjælp til DIE funktion

Jeg har denne stump kode:

mysql_connect($sql_host,$sql_user,$sql_pass);
mysql_select_db($sql_db);

$ip            = $REMOTE_ADDR;
$host            = gethostbyaddr($ip);
$time            = explode(\" \", microtime());
$userusec        = (double)$time[0];
$usersec        = (double)$time[1];
$deleteuser        = mysql_query(\"delete from userlog where date < $usersec -300\");
$userlog        = mysql_fetch_row( mysql_query(\"select * from userlog where ip like \'$ip\'\"));

if($userlog    == (false)) $ok = @mysql_query(\"insert into userlog (id,ip,name,date) values (\'\',\'$ip\',\'$host\',\'$usersec\')\");

$resultlogtab    = mysql_query(\"select count(*) as total from userlog\");
$numberlogtab    = mysql_fetch_array($resultlogtab);
if ($numberlogtab[total] == 1) print \"$numberlogtab[total] bruger online!\";
else print\"$numberlogtab[total] brugere online!\";


Denne kode virker skam fint, men hvis MYSQL serveren er \"nede\" eller der opstår en fejl, så kommer der en kæmpe fejl-meddelelse, kan man ikke bare få den til at skrive \"fejl\" eller noget i den retning. Uden den kæmpe meddelelse ?
Avatar billede razor Nybegynder
22. januar 2001 - 20:30 #1
@mysql_connect($sql_host,$sql_user,$sql_pass);
@mysql_select_db($sql_db);

$ip            = $REMOTE_ADDR;
$host            = gethostbyaddr($ip);
$time            = explode(\" \", microtime());
$userusec        = (double)$time[0];
$usersec        = (double)$time[1];
$deleteuser        = @mysql_query(\"delete from userlog where date < $usersec -300\");
$userlog        = @mysql_fetch_row( mysql_query(\"select * from userlog where ip like \'$ip\'\"));

if($userlog    == (false)) $ok = @mysql_query(\"insert into userlog (id,ip,name,date) values (\'\',\'$ip\',\'$host\',\'$usersec\')\");

$resultlogtab    = @mysql_query(\"select count(*) as total from userlog\");
$numberlogtab    = @mysql_fetch_array($resultlogtab);
if ($numberlogtab[total] == 1) print \"$numberlogtab[total] bruger online!\";
else print\"$numberlogtab[total] brugere online!\";
Avatar billede magnus_madsen Nybegynder
22. januar 2001 - 20:34 #2
Det er meget fint Razor, men kan man få den til at skrive fejl i stedet?
Avatar billede razor Nybegynder
22. januar 2001 - 20:39 #3
@mysql_connect($sql_host,$sql_user,$sql_pass);
@mysql_select_db($sql_db);

$ip            = $REMOTE_ADDR;
$host            = gethostbyaddr($ip);
$time            = explode(\" \", microtime());
$userusec        = (double)$time[0];
$usersec        = (double)$time[1];
$deleteuser        = @mysql_query(\"delete from userlog where date < $usersec -300\");
$userlog        = @mysql_fetch_row( mysql_query(\"select * from userlog where ip like \'$ip\'\"));

if($userlog    == (false)) $ok = @mysql_query(\"insert into userlog (id,ip,name,date) values (\'\',\'$ip\',\'$host\',\'$usersec\')\");

$resultlogtab    = @mysql_query(\"select count(*) as total from userlog\");
$numberlogtab    = @mysql_fetch_array($resultlogtab);
if ($numberlogtab[total] == 1) print \"$numberlogtab[total] bruger online!\";
elseif ($numberlogtab[total] > 1) print \"$numberlogtab[total] brugere online!\";
else print \"SQL\'en er sq gået kold!\";
Avatar billede magnus_madsen Nybegynder
22. januar 2001 - 20:41 #4
Tak for dit hurtige svar ! ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester