SimplePortal

Customization => Custom Coding => Topic started by: fllyfishy on March 18, 2009, 06:19:39 PM

Title: Help with PHP block
Post by: fllyfishy on March 18, 2009, 06:19:39 PM
I recently started maintaining a board for a friend that passed away, and I am trying to learn this stuff as I go. 

There is a Php block for the boards member of the month.  I changed the Member Id number in the code but is randomly changes to another member.  The members number is 227, but due to deleted members he is 121 on the listing.  I changed it to 122 yesterday, and today to 123.   Can someone review the code below, and help me out?  Thanks   Dean

global $settings;

/////////// FINDING HOW MANY Members in the Forum //////////////////
$query = mysql_query("SELECT * FROM smf_members");
$numberOfMembers=mysql_num_rows($query);



/////////// SELECT A MEMBER ////////////

$randomMember=rand(1,$numberOfMembers);
$ask=mysql_query("SELECT * FROM smf_members order by rand() limit 1");

//////  MEMBER SELECT OPTION ////////
/////if you want member # 5 to be used ONLY
////then change the #2 to the number you (want +1)  in this case 6     //
///// add "//" at begining on the next line to use a random member  /////
$ask=mysql_query("SELECT * FROM smf_members LIMIT 123,1" );
///// end of member select option /////

$row = mysql_fetch_array($ask, MYSQL_ASSOC) or die (mysql_error());
$idmember1=$row[ID_MEMBER]; // Member ID
$memberName1=$row[memberName]; // Member Name
$group1=$row[ID_GROUP]; // Member Group ID
$avatarin=$row[avatar];

$postgroup1=$row[ID_POST_GROUP]; // Post Group
$gender1=$row[gender];
$lastlogin1=$row[lastLogin];
if ($lastlogin1!=0){ $datelog1=date("d.M.Y H:i",$lastlogin1); }
else {
$datelog1='';
};
$dateReg1=$row[dateRegistered]; $dateform =date("d.M.Y H:i",$dateReg1);
$birthdate1=$row[birthdate]; if ($birthdate1=='0001-01-01'){$birthdate1=''; };
$location1=$row[location];
$post1=$row[posts]; // How Many Posts

if ($group1!='0'){
$ask=mysql_query("SELECT groupName, stars FROM smf_membergroups WHERE ID_GROUP='$group1'");
$row = mysql_fetch_array($ask, MYSQL_ASSOC);
$groupName1=$row[groupName]; // Group Name
$star1=$row[stars]; // How many Stars
};

$ask=mysql_query("SELECT groupName, stars FROM smf_membergroups WHERE ID_GROUP='$postgroup1'");
$row = mysql_fetch_array($ask, MYSQL_ASSOC);
$postgroup2=$row[groupName];
if ($star1==''){$star1=$row[stars]; };

// is the Member Online //////////////
$query = mysql_query("SELECT * FROM smf_log_online");
$numberOfRows=mysql_num_rows($query);
$imagepath1=$settings['images_url'];
if ($numberOfRows>0){
$ask=mysql_query("SELECT ip FROM smf_log_online WHERE ID_MEMBER='$idmember1'");
$row = mysql_fetch_array($ask, MYSQL_ASSOC);
$conline1=$row[ip];
};
/////////// how many Stars ////////////////////
$imagepath1=$settings['images_url'];
list($ngif,$gifn)=explode("#",$star1);
//////////////////////////////////////////////

///////////// Get The Avatar /////////////
if ($avatarin==''){
$ask=mysql_query("SELECT filename, ID_ATTACH FROM smf_attachments WHERE ID_MEMBER='$idmember1'");
$row = mysql_fetch_array($ask, MYSQL_ASSOC);
$avatar1=$row[filename]; $idattach1=$row[ID_ATTACH];
}
///////////// displaying the infos ////////////////
echo "<div align='center'>";

if ($avatarin!=''){
$checkavatar1=preg_match('/http:\/\//',$avatarin);
if ($checkavatar1){
echo "<img src='$avatarin' border='0' style='margin:5px'><br>";
} else {
echo "<img src='avatars/$avatarin' border='0' style='margin:5px'><br>";
}
};
if ($avatar1!=''){
echo "<img src='index.php?action=dlattach;attach=$idattach1;type=avatar' border='0' style='margin:5px'><br>";
};

echo "<b>$memberName1</b>"."<br>";
if ($groupName1!='') { echo "<b>$groupName1</b><br>"; };
echo "<b>$postgroup2</b><br>";
echo "<div style='margin:5px'>";
for ($i=0; $i<$ngif; $i+=1){
echo "<img src='$imagepath1/$gifn' border='0'>";
};
echo "</div>";
if ($conline1!=''){
echo "<img src='$imagepath1/useron.gif' border='0' style='margin:5px'><br>"; } else {
echo "<img src='$imagepath1/useroff.gif' border='0' style='margin:5px'><br>";
}


if ($gender!=''){ echo "<b>Gender:</b> ".$gender1."<br>"; };
if ($datelog1==''){ $datelog1='Never'; };
echo "<b>Last Active:</b><br>".$datelog1."<br>";
echo "<b>Date Registered:</b><br>".$dateform."<br>";
if ($birthdate1!='') { echo "<b>Date of Birth:</b><br>".$birthdate1."<br>"; };
if ($location1!='') { echo "<b>Location:</b><br>".$location1."<br>"; };
echo "<b>Posts:</b> ".$post1."<br>";

echo "</div>";

Title: Re: Help with PHP block
Post by: Robbo on March 26, 2009, 12:27:32 AM
Is this for SMF 1 or 2?

The best way to do this would be to use the memberContext array which can be created. I will do it for you when I have a chance and after you answer which SMF version you are using.
SimplePortal 2.3.8 © 2008-2024, SimplePortal