netphreak
08-04-2001, 04:24 PM
If anyone can help me out, I'll be very thankful....
I try to make a drop-down box with all the names and e-mail addresses of the users of my board. One way of doing this, is by "hardcode" some new lines in member.php. Here's an example:
// ######################## my new lines of code.... ########################
if ($action=="justatest") {
include("./global.php");
$query = "SELECT * FROM user ORDER BY username, email";
$result = mysql_query($query);
// Determine the number of users
$number = mysql_numrows($result);
// Create drop-down menu of all users
print "<table cellpadding=20 bgcolor=\"lightgrey\">
<tr>
<td>
<form action=\"displayresults.php\" method=\"post\">
<select name=\"userid\">
<option value=\"\">Select a user</option>";
for($i=0; $i<$number; $i++) {
$userid = mysql_result($result,$i,"userid");
$username = mysql_result($result,$i,"username");
$email = mysql_result($result,$i, "email");
print "<option value=\"$userid\">$username - $email</option>";
}
print "</select><input type=\"submit\" value=\"submit\" name=\"submit\">
</form>
</td>
</tr>
</table>";
}
Well, unless I didn't do any typos, this will work as intended. But from here the problem starts. Instead of the print command, I want to call a new template for the output. This makes everything much easier to customize. All the standard templates is called like this in member.php:
eval("dooutput(\"".gettemplate("newtemplate")."\");");
I have successfully done this with several other new options for my users, but for some reason I am not able to get the correct result if I use while loops or ++ :( In the drop-down box example above, I only get the last user in the alphabet, which is the last record. How come??? I suspect another php file used to generate the templates interfering. Any ways around?
Please - if anyone have a clue, share your thoughts - even if it's just a wild guess... I've been struggling with this for sooooo long now.
Thank you :)
I try to make a drop-down box with all the names and e-mail addresses of the users of my board. One way of doing this, is by "hardcode" some new lines in member.php. Here's an example:
// ######################## my new lines of code.... ########################
if ($action=="justatest") {
include("./global.php");
$query = "SELECT * FROM user ORDER BY username, email";
$result = mysql_query($query);
// Determine the number of users
$number = mysql_numrows($result);
// Create drop-down menu of all users
print "<table cellpadding=20 bgcolor=\"lightgrey\">
<tr>
<td>
<form action=\"displayresults.php\" method=\"post\">
<select name=\"userid\">
<option value=\"\">Select a user</option>";
for($i=0; $i<$number; $i++) {
$userid = mysql_result($result,$i,"userid");
$username = mysql_result($result,$i,"username");
$email = mysql_result($result,$i, "email");
print "<option value=\"$userid\">$username - $email</option>";
}
print "</select><input type=\"submit\" value=\"submit\" name=\"submit\">
</form>
</td>
</tr>
</table>";
}
Well, unless I didn't do any typos, this will work as intended. But from here the problem starts. Instead of the print command, I want to call a new template for the output. This makes everything much easier to customize. All the standard templates is called like this in member.php:
eval("dooutput(\"".gettemplate("newtemplate")."\");");
I have successfully done this with several other new options for my users, but for some reason I am not able to get the correct result if I use while loops or ++ :( In the drop-down box example above, I only get the last user in the alphabet, which is the last record. How come??? I suspect another php file used to generate the templates interfering. Any ways around?
Please - if anyone have a clue, share your thoughts - even if it's just a wild guess... I've been struggling with this for sooooo long now.
Thank you :)