View Single Post
Old 12-25-2009, 12:11 AM   #6 (permalink)
Jarod B
The Wanderer
 
Join Date: Aug 2009
Posts: 18
Thanks: 1
Jarod B is on a distinguished road
Default

I suggest you not using HTML in your code, instead making it more loose and reusable for future purposes. Like this one I created for a fansite I'm working on:

Code:
<?php
require_once(dirname(__FILE__) . "/class.mysql.php");

class memberhandler extends mysql {
	private $table = "members";
	private $sql;
	
	private $default_member_type = "Member";
	
	public function create_table() {
		$this->sql = "
		CREATE TABLE IF NOT EXISTS ". $this->table ."(
			members_id INT(11) NOT NULL AUTO_INCREMENT,
			members_username VARCHAR(12) NOT NULL,
			members_password VARCHAR(24) NOT NULL,
			members_rsname VARCHAR(12) NOT NULL DEFAULT 'Unknown',
			members_membertype VARCHAR(255) NOT NULL DEFAULT '". $this->default_member_type ."',
			PRIMARY KEY (members_id)
		);";
		
		return mysql::query($this->sql);
	}
	
	public function total_members() {
		$this->sql = mysql::select($this->table, "members_id");
		
		return mysql::num_rows($this->sql);
	}
	
	public function register_member($username, $password, $rsname, $member_type) {
		$this->sql = mysql::insert($this->table, array("$username", "$password", "$rsname", "$member_type"), "members_username, members_password, members_rsname, members_membertype");
		
		return $this->sql;
	}
	
	public function verify_member($username, $password) {
		$this->sql = mysql::select($this->table, "members_username, members_password", "members_username='". ucwords($username) ."' AND members_password='". $password ."'");
		$count = mysql::fetch_array($this->sql);
		
		if($count >= 1) { // returns true
			return true;
		} else {
			return false;
		}
	}
	
	public function member_username($username) {
		$this->sql = mysql::select($this->table, "members_username", "members_username='$username'");
		$count = mysql::num_rows($this->sql);
		
		if($count >= 1) {
			while($row = mysql::fetch_array($this->sql)) {
				$user = $row['members_username'];
				
				return ucwords($user);
			}
		} else {
			return false;
		}
	}
	
	public function member_type($username) {
		$this->sql = mysql::select($this->table, "members_username, members_membertype", "members_username='$username'");
		
		$count = mysql::num_rows($this->sql);
		if($count >= 1) {
			while($row = mysql::fetch_assoc($this->sql)) {
				$member_type = $row['members_membertype'];
				
				return ucwords($member_type);
			}
		} else {
			return false;
		}
	}
	
	public function rs_name($username) {
		$this->sql = mysql::select($this->table, "members_username, members_rsname", "members_username='$username'");
		
		$count = mysql::num_rows($this->sql);
		
		if($count >= 1) {
			while($row = mysql::fetch_assoc($this->sql)) {
				$rs_name = $row['members_rsname'];
				
				return ucwords($rs_name);
			}
		} else {
			return false;
		}
	}
}
?>
And here it is...in action via another function
Code:
	function total_members($non=null, $one=null, $more=null) {
		$member = new memberhandler();
		$total_str = $member->total_members();
		
		if( $member->total_members() == 1 ) {
			$one = ( $one != null ) ? " ".$one : $one; // Check if param is being used
			
			$total_str .= $one;
		} else if($member->total_members() > 1) {
			$more = ( $more != null ) ? " ".$more : $more; // Check if param is being used
			
			$total_str .= $more;
		} else {
			$total_str .= $non;
		}
		
		print($total_str);
	}
And the actual use of this
Code:
<span id="date"><?php print(date("M.d.Y")); ?> | We have <b><?php total_members('no', 'member', 'members'); ?></b> with Trookine</span>

OUTPUT:
Dec.25.2009 | We have 1 member with Trookine
Jarod B is offline  
Reply With Quote