Geschrieben von Startpost-Retter am 23.02.2010 um 21:38:
Versch. Ausgabe nach best. Zeit
Huhu GB
Entschuldigt den komischen Titel ;D
Idee:
Die Aktivitäten der User sollen automatisch per PHP überwacht und ausgegeben werden. Also: "Wenn Mitglied A länger als 1 Woche nicht eingeloggt, dann..." Das geschieht ganz einfach mit einer If Funktion, das ist klar
Das Vergleichen der Werte "vor einer Woche" und "heute" ist ebenfalls nicht das Problem, sondern die korrekte Ausgabe.
Problem:
Ich möchte immer nur den zuletzt eingetragenen Werts eines unbestimmten Mitglieds vergleichen lassen, da sonst bei Aktivität mehrmals "heute" ausgegeben wird.
Wäre ja dank "LIMIT 0,1" kein Problem, wenn nicht der Rest der ersten Whileschleife ignoriert werden würde (der die Mitgliedsnamen ausgeben lässt).
Es wird also nur das erste Mitglied angezeigt.
Wir stellen uns vor, wir haben eine Tabelle:
Mitglied | bla | bla | bla | Aktivität
Damit würde es dann enden. Die anderen Mitglieder würden nicht mehr angezeigt werden.
Genug geredet, der Code:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
|
<?php
$abfrage = "SELECT * FROM mitglieder";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
?>
<tr>
<td width="20%">
<a href="profil.php?user=<?php echo $row->id; ?>">
<?php echo $row->name; ?>
</td>
<td width="20%">
<?php echo $row->datum; ?>
</td>
<td width="20%">
<?php
if(!empty($row->tag)) {
echo $row->tag; ?>.<?php echo $row->monat; ?>.<?php echo $row->jahr;
} else {
echo "keine Angabe";
}
?>
</td>
<td width="20%">
<?php
if(!empty($row->beruf)) {
echo $row->beruf;
} else {
echo "arbeitsuchend";
}
?>
</td>
<td width="20%">
<?
$abfrage = "SELECT timestamp FROM login WHERE erfolgreich = 'ja' LIMIT 0,1";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
$login = $row->timestamp;
$heute = time();
if($login < $heute) {
echo "länger her als heute";
} else {
echo "heute";
}
echo $row->aktivitaet;
}
?>
</td>
</tr>
<?php
}
?>
|
|