Avatar billede stengaard Praktikant
28. marts 2008 - 18:57 Der er 17 kommentarer og
1 løsning

hvad skal laves om i dette script

har et problem der er følgende hvad skal man skrive i denne linie hvis det er alle user man skal tjekke om er on eller offline

  $users = mysql_query("select `user`, `lastseen` FROM `login` WHERE `user`='".$_SESSION["navn"]."'");

scriptet ser således ud

<?php
  include('access.php');
$users = mysql_query("select `user`, `lastseen` FROM `login` WHERE `user`='".$_SESSION["navn"]."'");

while ($row = mysql_fetch_array($users))
{
if ($row["lastseen"] > time() - 70)
  echo "<img src=\"images/green.gif\" \>" .$row["user"];
else
  echo "<img src=\"images/red.gif\" \>" .$row["user"];
}

?>
Avatar billede straszek Praktikant
28. marts 2008 - 19:03 #1
fjern "WHERE `user`='".$_SESSION["navn"]."'" så finder den alle i stedet for dem hvor  `user`='".$_SESSION["navn"]."'
Avatar billede stengaard Praktikant
28. marts 2008 - 19:10 #2
fandt ud af det svaret

$users = mysql_query("select `user`, `lastseen` FROM `login` ");

men hvordan laver man det om til en liste hvor de står lige under hinanden??
Avatar billede stengaard Praktikant
28. marts 2008 - 19:11 #3
tak straszek
Avatar billede stengaard Praktikant
28. marts 2008 - 19:16 #4
<?php
  include('access.php');
$users = mysql_query("select `user`, `lastseen` FROM `login` ");
while ($row = mysql_fetch_assoc($users)) {
    if ($i++ != 0) echo '<div class="hr"></div>';
if ($row["lastseen"] > time() - 70)
  echo "<img src=\"images/green.gif\" \><b> "  .$row["user"];
else
  echo "<img src=\"images/red.gif\" \><b> " .$row["user"];
}

?>
Avatar billede nielle Nybegynder
28. marts 2008 - 19:33 #5
Sådan?

<?php
include('access.php');

$users = mysql_query("select user, lastseen FROM login");

echo '<div class="hr"></div>';
while ($row = mysql_fetch_assoc($users)) {
    if ($row["lastseen"] > time() - 70)
        echo "<img src='images/green.gif'>"
    else
        echo "<img src='images/red.gif'>";

    echo "<b>" . $row["user"] . "</b><br>";
}
echo "</div>";
?>
Avatar billede stengaard Praktikant
28. marts 2008 - 19:44 #6
ok nu har jeg et andet problem hvordan for man så gjort dem offline i logout scriptet

logout.php ser sådan her ud

<?
session_start();
$_SESSION = array();
session_destroy();
header("Location:login.php");
exit;
?>
Avatar billede nielle Nybegynder
28. marts 2008 - 19:48 #7
Du bliver nok nødt til at udvide din tabel med endnu et felt "online" som kan være sand/falsk.
Avatar billede stengaard Praktikant
28. marts 2008 - 19:49 #8
ok, og hvad mere skal der til
Avatar billede stengaard Praktikant
28. marts 2008 - 19:51 #9
nu ser den sådan her ud min table

CREATE TABLE `login` (
  `ID` int(11) NOT NULL auto_increment,
  `user` varchar(50) NOT NULL default '',
  `pass` varchar(25) NOT NULL default '',
  `lastseen` text NOT NULL,
  `online` text NOT NULL,
  `navn` varchar(51) NOT NULL default 'Ikke oplyst',
  `image` varchar(35) NOT NULL default 'gaest.jpg',
  `member` varchar(50) NOT NULL default 'Gæst',
  `email` varchar(50) NOT NULL default '',
  `adresse` text NOT NULL,
  `postnr` varchar(4) NOT NULL default '',
  `kommune` text NOT NULL,
  `mobil` varchar(8) NOT NULL default '',
  `foedselsdag` char(2) NOT NULL default '',
  `aar` varchar(4) NOT NULL default '',
  `maaned` varchar(14) NOT NULL default '',
  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  `tid` datetime NOT NULL default '0000-00-00 00:00:00',
  `oprettetaf` text NOT NULL,
  PRIMARY KEY  (`ID`),
  UNIQUE KEY `idx_brugere` (`user`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 PACK_KEYS=0 AUTO_INCREMENT=67 ;
Avatar billede stengaard Praktikant
28. marts 2008 - 19:53 #10
hvis jeg bruger dit eksemple nielle med opstillingen af on og offline brugerne på en liste kommer der igen ting frem hvorfor men hvis jeg bruger mit eget eksemple virker det
Avatar billede nielle Nybegynder
28. marts 2008 - 19:58 #11
Der mangler et ; i slutningen af denne:

echo "<img src='images/green.gif'>"
Avatar billede stengaard Praktikant
28. marts 2008 - 19:59 #12
ok
Avatar billede stengaard Praktikant
28. marts 2008 - 20:28 #13
og hvordan for jeg det så til at virke går ud fra det er i mit script der opdatere table i login

scriptet er dette

<?php
include("access.php");

session_start();
mysql_query("update `login` set `lastseen`=".time()." where `user`='".$_SESSION["navn"]."'");
mysql_query("update `login` set `online`=".sandt." where `user`='".$_SESSION["navn"]."'");  (ved ikke hvad der skal stå her)


?>

<script type="text/javascript">
setTimeout('location.reload(true)',60000)
</script>
<meta http-equiv="Refresh" content="62" />
<meta name="robots" content="none" />
Avatar billede nielle Nybegynder
29. marts 2008 - 08:15 #14
<?php
include("access.php");

session_start();
mysql_query("UPDATE login SET lastseen = " . time() . " WHERE user = '" . $_SESSION["navn"] . "'");
mysql_query("UPDATE login SET online = 1 WHERE user = '" . $_SESSION["navn"] . "'");
?>

<script type="text/javascript">
setTimeout('location.reload(true)',60000)
</script>
<meta http-equiv="Refresh" content="62" />
<meta name="robots" content="none" />
Avatar billede nielle Nybegynder
07. april 2008 - 17:57 #15
Har du fået kigget på det?
Avatar billede stengaard Praktikant
07. april 2008 - 20:04 #16
ja det virker så table bliver til 1
Avatar billede stengaard Praktikant
07. april 2008 - 20:07 #17
og har ændret mit logout script til følgende så det virker..

scriptet

<?php
  include('access.php');
session_start();
mysql_query("UPDATE login SET online = 0 WHERE user = '" . $_SESSION["navn"] . "'");
$_SESSION = array();
session_destroy();
header("Location:../index.php");
exit;
?>

så den bliver til o igen udfor user i tablene
Avatar billede nielle Nybegynder
12. april 2008 - 07:14 #18
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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