Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
19.03.2002, 19:31
G.F.



Hi Leutz,
mal wieder ne kleine Frage:
Wie kann ich meine registrierten Besucher (z.B. in einem Forum) aus meiner Datenbank lesen?
Die Datenbank sieht ungefähr so aus:
id nickname .....
1 var .....
2 var .....
3 var .....
4 var .....
5 var .....
6 var .....
7 var .....
8 var .....
9 var .....
10 var .....
var steht für einen beliebigen Wert.
Wenn die Id's fortlaufend sind ist es kein Problem die registrierten Besucher auszulesen.
Aber wie mache ich es wenn ich einen Besucher lösche? Hierbei fälllt eine Id weg:
id nickname .....
1 var .....
2 var .....
3 var .....
4 var .....
5 var .....

7 var .....
8 var .....
9 var .....
10 var .....

Die Schleife wird dann unterbrochen wenn ich sie so schreib:

$anfrageauftable =mysql_query("SELECT * FROM user";
$anz_reihen = mysql_num_rows($anfrageauftable);
$id=1;
while($id <= $anz_reihen){
$resultselect = mysql_query("SELECT $selectspalte FROM user WHERE $wherespalte='$spalteninhalt'";
$result = mysql_fetch_array($resultselect);

print $result[id];
print $result[nickname];
++$id;
}

Der registrierte Besucher 10 wird nicht aufgelistet.
HELP HELP HELP
CU

--

zum Seitenanfang zum Seitenende Profil || Suche
001
19.03.2002, 19:57
Megge



versuchs ma mit $id++

--

zum Seitenanfang zum Seitenende Profil || Suche
002
19.03.2002, 23:25
Another1



du solltest das entweder mit ner linked list machen (ka ... wie php das handhaben tut) oder eben alle oberhalb des gelöschten elements nach 'unten' flushen also 5 würd gelöscht, 6 wird neue 5, 7 neue 6 , ... , n neue n-1;

--

Another1

...relaxing..atm =)
... und Schweiz suckt!

zum Seitenanfang zum Seitenende Profil || Suche
003
20.03.2002, 07:01
Tron



ich wuerde einfach mit der EOF eigenenschaft der sql-abfrage arbeiten
desweiteren brauchst du nicht bei jedem schleifendurchlauf die abfrage erneut zu machen! das ist a***lahm
zudem hast eine ) vergessen.

ich weiss nicht wie das in php syntakisch korrekt aussieht, ich kenn sql nur mit VBasic (Access), aber ich denke du kannst das umsetzen
das sieht das so aus:

Set RS = CurrentDb.OpenRecordset("Daten") ' hier koennte auch eine sql-abfrage stehen, bei meinem fall will ich die ganze tabelle benoetigt
RS.MoveFirst
Do While Not RS.EOF
..' mach irgendetwas mit dem aktuellen datensatz
..RS.MoveNext
Loop

<edit>
hab grade mal kurz gegooglet, in deinem fall waere mysql_fetch_row wohl die beste loesung
</edit>

--

'KEINE PANIK' - aus der Triologie in fuenf Baenden von Douglas Adams

'FÜR DEINN FERD' - aus 'Gevatter Tod' von Terry Pratchett


Dieser Beitrag wurde am 20.03.2002 um 07:09 von Tron bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
004
20.03.2002, 16:14
dp
Administrator


1) du brauchst keine "liste" eine id ist eine eindeutige nummer, ob da mittendrin was fehlt ist egal.
mach den primary key von der tabelle auf auto_increment und mysql kümmert sich um den listenkram.

2) um die anzahl der datensätze abzufragen, ist der code hier x mal schneller:

$r = mysql_query("SELECT count(userid) FROM user");
list($count) = mysql_fetch_row($r);

--

zum Seitenanfang zum Seitenende Profil || Suche
005
21.03.2002, 18:04
G.F.



@ darth paul
wenn ich die schleife so ablaufen lass fehlt mir aber trotzdem noch der benutzer 10. Die Spalte id war bei mir auch schon vorher auto_increment und
primarykey. das Problem liegt nur darin dass die datenbank nicht neunummeriert wird!!!!!!
KAnn ich die vielleicht auch irgendwie anderster auslesen am besten Quelltext. Wie würdet ihr so ne Liste auslesen. Quelltext!!!!

--

zum Seitenanfang zum Seitenende Profil || Suche
006
21.03.2002, 20:41
dp
Administrator


achso lol wenn du das einfach auslesen willst:

$r_user = mysql_query("SELECT blubb..");
while( $user = mysql_fetch_user($r_user) )
{
print $user['username'].'<br>';
}

--

zum Seitenanfang zum Seitenende Profil || Suche
007
22.03.2002, 11:38
G.F.



ok danke
hab nochmal ne frage woran liegt hier der fehler:
$output.= "
<tr>
<td><div class=celllistnn>$result[nickname]</div></td>
<td><div class=celllistvalues>$result[vorname]</div></td>
<td><div class=celllistvalues>$result[status]</div></td>
<td align=center><div class=celllistvalues>
<a href=\"http://wwp.icq.com/scripts/search.dll?to=$result[icq]\" target=\"_blank\">
<img src=\"http://wwp.icq.com/scripts/online.dll?icq=$result[icq] img=2\" border=0></a></div>
</td>
<td align=center>
<a href=\"mailto:$result[email]\"><div class=celllistvalues><img src=\"img/mail.gif\" width=14 height=11 border=0 alt=Mailen></div></a>
</td>
<td align=center>
<a href=\"pass.php?action=showdetails&id=$result[id]\"><div class=mainmenue>Details</div></a>
</td>
</tr>
";

Kann des sein das der ein Problem mit den zwei slashs (<img src=\"http://wwp.icq.com/scripts/online.dll?icq=$result[icq] img=2\" border=0></a></div>) hat? Kann ich des auch anderster schreiben?
das ganze ist eine PHP-Variable!!!

--


Dieser Beitrag wurde am 22.03.2002 um 11:40 von G.F. bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
008
22.03.2002, 12:29
dp
Administrator


was ist denn der fehler?

--

zum Seitenanfang zum Seitenende Profil || Suche
009
22.03.2002, 18:18
hausi



<img src=\"http://wwp.icq.com/scripts/online.dll?icq=$result[icq]?img=2\" border=0></a></div>
Hoffe, das war der Fehler ;)

--

zum Seitenanfang zum Seitenende Profil || Suche
010
22.03.2002, 21:10
dp
Administrator


? -> &

--

zum Seitenanfang zum Seitenende Profil || Suche
011
23.03.2002, 10:09
hausi



uups... Da hab ich wohl auch gepennt... Sorry!

--

zum Seitenanfang zum Seitenende Profil || Suche