Welcome Guest ( Log In | Register)



 
Reply to this topicStart new topic
> Listing From Table Row Data, Listing all members
HmmZ
post Nov 26 2005, 12:05 PM
Post #1


Super Member
*********

Group: Members
Posts: 362
Joined: 2-March 05
From: The Netherlands
Member No.: 4,097



Hello, it's been a while since i've been active in the PHP Board ( i used to be really active in here ), not only to help others but also to request help ( people knowing those requests, dont share your bad experience with my requests tongue.gif )

Anyway, i am requesting help on a listing of members, i totally forgot about how to fetch the rows from a table and display each row, i thought it was:
CODE
$result=mysql_query("SELECT * FROM $usertable ORDER BY id DESC") or die();
$num=mysql_num_rows($result);
$array=mysql_fetch_array($result);
for($i=0;$i<$num;$i++){
print "";}


where print "" should display name, username, email, grade(member/mod/admin) and an option to edit. And where the list is categorized on user id, descending
This didn't work out, so ive been experimenting, but so far no good, this is why i am requesting help in this matter.

The current code i have for the list is:
CODE
$result=mysql_query("SELECT * FROM $usertable ORDER BY uid DESC");
$num=mysql_num_rows($result);
$array=mysql_fetch_array($result);
$lvl="<img src='./images/level".$put[permit].".png' border='0'>";
for(;
list(,$listname)=each($array['name']),
list(,$listuname)=each($array['username']),
list(,$listfunction)=each($array['function']),
list(,$listpermit)=each($array['permit']),
list(,$listemail)=each($array['email'])
;)
  {
for($i=0;$i<$num;$i++)
{
print "<tr><td align='center'><font class='news_font'>$listname</td><td align='center'><font class='news_font'>$listuname</td><td align='center'><font class='news_font'>$listfunction</td><td align='center'>$lvl</td><td align='center'><font class='news_font'>$listemail</td><td align='center'><a href='manmem.php?user=$listuname&req=edit'>Edit</a></tr>";
}
  }


It does not display anything unfortunately and i just cant find a way to get it all displayed right, at one point i did have a result (dont ask me wich method, ive tried/used many methods) but it displayed every row 4 times, wich i have the term 'weird blink.gif ' for tongue.gif

Anyway, any help is greatly appreciated happy.gif

Notice from BuffaloHELP:
Topic title changed. Next time using "Requesting Help" as your only title will result in warning adjustment.


This post has been edited by BuffaloHELP: Nov 26 2005, 04:26 PM
Go to the top of the page
 
+Quote Post
Avalon
post Nov 26 2005, 12:28 PM
Post #2


Privileged Member
*********

Group: Members
Posts: 630
Joined: 12-August 05
From: Melbourne, Australia
Member No.: 10,624



Perhaps you could try something like this:

CODE

$result=mysql_query("SELECT * FROM $usertable ORDER BY uid DESC");
$row = mysql_fetch_array($result);
$lvl="<img src='./images/level".$row[permit].".png' border='0'>";
while($row){
echo "<tr><td align='center'><font class='news_font'>$row[name]</td><td align='center'><font class='news_font'>$row[username]</td><td align='center'><font class='news_font'>$row[function]</td><td align='center'>$row[lvl]</td><td align='center'><font class='news_font'>$row[email]</td><td align='center'><a href='manmem.php?user=$row[username]&req=edit'>Edit</a></tr>";
}


I haven't tested it, but I think it should work.
Go to the top of the page
 
+Quote Post
HmmZ
post Nov 26 2005, 01:19 PM
Post #3


Super Member
*********

Group: Members
Posts: 362
Joined: 2-March 05
From: The Netherlands
Member No.: 4,097



I tried it just now, it didnt work ;_;

i got something like the following (endless loop):
CODE
Member Real Name Member Username Member Function Member Level Member E-mail Options
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit
tester tester2 member  tester Edit

and i dont think it ends anytime soon XD
Go to the top of the page
 
+Quote Post
HmmZ
post Nov 26 2005, 01:25 PM
Post #4


Super Member
*********

Group: Members
Posts: 362
Joined: 2-March 05
From: The Netherlands
Member No.: 4,097



I googled and found this:
QUOTE
WHILE

The only difference this construct has with do..while is the possibility of bypassing the loop if the loop condition is not met. This is because truth expressions are checked even before an iteration takes place. The basic syntax is:

      while (expr) statement;

As you can see, while loop is very simple. In fact, this is the simplest type of loop in PHP. An example of this loop in action is:

      $i = 1; // initialize $i
      while ($i <= 3) // set expression where truth will be checked
      {
        echo "Value = $i"; // display current value
        $i++; // increment $i to prevent endless loop
      }

There! This ends our section on PHP loops. Remember that loops can be a powerful ally but it can also be a destructive enemy if used in the wrong sense. The general rule on loops is: "Avoid endless loops". As we have seen in the examples above, a possible way to get into this dilema is forgetting to increment (or decrement) a variable which happens to be the control variable for the loop. With your knowledge on loops, you can now create shorter codes and traverse through database tables more effectively. Of course that would be tackled on later lessons.


Unfortunately, it does not solve the problem of only one user being displayed multiple times...how can i make sure each row is equal to each unique user?
Go to the top of the page
 
+Quote Post
HmmZ
post Nov 26 2005, 01:54 PM
Post #5


Super Member
*********

Group: Members
Posts: 362
Joined: 2-March 05
From: The Netherlands
Member No.: 4,097



i found a way to solve it all, it may look weird hehe smile.gif

CODE
$result=mysql_query("SELECT * FROM $usertable ORDER BY uid DESC");
if(mysql_num_rows($result)){
while($row=mysql_fetch_row($result)){
$lvl="<img src='./images/level".$row[].".png' border='0'>";

echo "<tr><td align='center'><font class='news_font'>$row[3]</td><td align='center'><font class='news_font'>$row[]</td><td align='center'><font class='news_font'>$row[]</td><td align='center'>$lvl</td><td align='center'><font class='news_font'>$row[]</td><td align='center'><a href='manmem.php?user=$row[]&req=edit'>Edit</a></tr>";
}}

where in row[] is the number of the [b]field[b] and not counting the primary key
(so if your table looks like "id,username,password,email,realname" etc) it would be:
username($row[1]),email($row[3],realname($row[4]), sounds weird but works biggrin.gif

Thank you for trying to help avalon happy.gif
Go to the top of the page
 
+Quote Post
Avalon
post Nov 27 2005, 12:08 AM
Post #6


Privileged Member
*********

Group: Members
Posts: 630
Joined: 12-August 05
From: Melbourne, Australia
Member No.: 10,624



*darn*! Sorry about creating the endless loop. sad.gif
It was close to being right, but one wrong step and it turned into a disaster. Glad you sorted it out in the end, at least I pointed you in the right direction. smile.gif
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic

Collapse

> Similar Topics

Topics Topics
  1. Form To Pdf, With Email?(3)
  2. Help With Reading Files(5)
  3. Finding Data In Meta Tags(0)
  4. Same 1 Registeration Data For Different Purposes(4)
  5. Loading Mysql Data Into A Table(10)
  6. Moving Members From On Fourm To Another.(5)
  7. Help Needed With Directory/file Listing Code Infinite Loop(5)
  8. How Good Is This Data Cleaning Function?(2)
  9. Putting Data Of 2 Pages In Mysql At Once(1)
  10. Problems With Data Formatting(2)
  11. What Does This Do?(4)
  12. Unofficial Trap17 Hosted Members Directory(13)
  13. Using Multiple Selection Array In Table To Order Data(1)
  14. Php Email Validation(1)
  15. Php + Mysql Question!(4)
  1. Need Some Help In File Browser(8)


 



- Lo-Fi Version Time is now: 23rd November 2008 - 12:58 AM