Hallo mensen ik ben pas begonnen met OO programmeren in php... ik weet alleen niet of ik het nu goed heb gedaan of niet (A) zou iemand mij wat tips kunnen geven?

Midas
'var' is PHP 4. Die mag je dus weglaten. :-)

Karl
Het is netter om een apart db class te maken.

Storeman
Je moet bedenken dat je een echte gebruiker hebt en wat deze kan doen.



<?
class user {
	private $uId;		// The user id
	private $uName;		// The user name
	private $uPass;		// The user password
	
	private var $qLimit;	// The limit for an query
	
	/* Functions to set values */
	// These functions sets data for uId, uName, uPass en qLimit
	function set_uId ($value) {
		$this->uId		=	$value;
	}
	function set_uName ($value) {
		$this->uName	=	$value;
	}
	function set_uPass ($value) {
		$this->uPass	=	$value;
	}
	function set_qLimit ($value){
		$this->qLimit	=	$value;
	}
	
	// Functions to use data
	// This function creates an user.
	// Needs atleast uName and uPass to be set
	public function createUser() {
		mysql_query("INSERT INTO users (uName, uPass) VALUES ('".$this->uName."','".$this->uPass."')");
	}
	
	// This function deletes an user
	// Needs atleast uId to be set
	public function deleteUser() {
		mysql_query("DELETE FROM users WHERE uId='".$this->uId."'");
	}
	
	// This function selects 1 or more users
	// Needs for normal atleast the limit and for specific the uId
	public function selectUser ($type) {
		if($type == 'specific'){
			mysql_query("SELECT * FROM users WHERE uId='".$this->uId."'");
		} elseif($type == 'normal'){
			mysql_query("SELECT * FROM users LIMIT ".$this->qLimit);
		}
	}
}
?>


alvast bedankt =D

EDIT:::

Oke ik heb de tips een beetje gelezen ik hoop dat ik het nu beter heb gedaan:

<?

class user extends dbConnect {
	private $uId;		// The user id
	private $uName;		// The user name
	private $uPass;		// The user password
	
	/* Functions to set values */
	// These functions sets data for uId, uName, uPass en qLimit
	function set_uId ($value) {
		$this->uId		=	$value;
	}
	function set_uName ($value) {
		$this->uName	=	$value;
	}
	function set_uPass ($value) {
		$this->uPass	=	$value;
	}
	
	// Functions to use data
	public function create() {
		if(empty($this->uName) || empty($this->uPass)){
			return 'The username or password was not set.';
		} else {
			$sql	=	"INSERT INTO users (uName, uPass) VALUES ('".$this->uName."', '".$this->uPass."')";
			parent::query($sql);
		}
	}
	
	// This function needs atleast uId to be set
	public function delete() {
		if(empty($this->uId)){
			return 'User id was not set.';
		} else {
			$sql	=	"DELETE FROM users WHERE uId='".$this->uId."'";
			parent::query($sql);
		}
	}
}
?>
Ok dus ik had het nog een beetje fout (A)

Dus wat ik bijvoorbeeld in de class moet doen met een gebruiker die bijv bij een foto boek een foto kanuploaden
logIn()
logOut()
addPicture()

Of moet ik dan een class voor het uploaden van een plaatje een apparte picture class moeten hebben?
addPicture() hoort niet in een User class thuis, hij weet immers alleen dingen over zichzelf niets over een afbeelding. Je zult dus een apart object moeten gebruiken dat het toevoegen van een afbeelding verzorgt, bijvoorbeeld dus een Picture object.

Aangezien een Picture geüpload wordt door een User, is die User een eigenschap van het Picture object.
Oke thx Ik denk dat ik het nu begrijp (Y)

Reageren