Developpez.com - Java
X

Choisissez d'abord la catégorieensuite la rubrique :

logo
Sommaire > PHP
        Méthode permettant de formater un timestamp
        Méthode permettant de vérifier la validité d'une date
        Fonction de validation d'email
        Retrouve l'adresse ip à partir du nom de la machine
        Classe permettant de gérer une connexion à une base de données



Auteur : Baptiste Wicht
Version : 28.09.2006
Méthode permettant de formater un timestamp
Cette méthode permet de formater un timestamp sous une forme affichable, par exemple : Hier, 15h06 Le 15.02.2006, 09h54

function getGoodTime($timestamp){
	$day = date("d",$timestamp);
	$month = date("m",$timestamp);
	$year = date("Y",$timestamp);
		
	$actual_day = date("d");
	$actual_month = date("m");
	$actual_year = date("Y");
		
	if($day == $actual_day && $month == $actual_month  && $year == $actual_year){
		$first = "Aujourd'hui, ";
	}else if($day == ($actual_day - 1) && $month == $actual_month  && $year == $actual_year){
		$first = "Hier, ";
	}else{
		$first = "Le" . $day . "/" . $month . "/" . $year . ", ";
	}
		
	return ($first . date("H",$timestamp) . "h" . date("i",$timestamp));
}

Auteur : Baptiste Wicht
Version : 28.09.2006
Méthode permettant de vérifier la validité d'une date
Cette méthode permet de tester qu'une date est bien valide.

function verif_jours_mois($mois, $jour, $annee){
	if($annee < 0 || $jour < 0 || $mois < 0){
		return false;
	}

	if($mois > 12){
		return false;
	}
	
	switch ($mois){
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			if($jour >31){
				return false;
			}

			break;
		case 4:
		case 6:
		case 9:
		case 11:
			if($jour >30){
				return false;
			}
			break;
		case 2:
			if (($annee % 4) != 0 AND ($annee % 100) != 0) {
				if($jour >28){
					return false;
				}
			} 
			else {
				if($jour >29){
					return false;
				}
			}
			break;
	}
	
	return true;
}

Auteur : Baptiste Wicht
Version : 11/07/2007
Fonction de validation d'email

Cette fonction permet de valider un email :

public function isValidEmail($email) {
	if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
	  return false;
	}
	
	$email_array = explode("@", $email);
	$local_array = explode(".", $email_array[0]);
	for ($i = 0; $i < sizeof($local_array); $i++) {
	   if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
	    return false;
	  }
	}  
	if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
	  $domain_array = explode(".", $email_array[1]);
	  if (sizeof($domain_array) < 2) {
	      return false; 
	  }
	  for ($i = 0; $i < sizeof($domain_array); $i++) {
	    if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
	      return false;
	    }
	  }
	}
	return true;
}

Auteur : Baptiste Wicht
Version : 11/07/2007
Retrouve l'adresse ip à partir du nom de la machine

Cette petite fonction PHP permet de retrouver l'adresse IP d'une machine à partir de son nom. On peut directement lui passer le nom de la machine sans le nom de domaine, il suffit de renseigner les noms de domaines différents dans le tabbleau domaine et la méthode cherchera pour vous.

$domains = array('.domain1', '.domain2', '.domain3');

function resolveDns($hostname){
	global $domains;
	
	$ip = $hostname;
	$i = 0;
	
	while($ip == $hostname && $i < sizeof($domains)){
		$ip = gethostbyname($hostname . $domains[$i]);
		$ip = str_replace($domains[$i], '', $ip);
		$i ++;
	}
	
	return $ip;
}

Auteur : Baptiste Wicht
Version : 11/07/2007
Classe permettant de gérer une connexion à une base de données

Cette petite classe permet de gérer la connexion à une base de données.

<?php
	require_once("Request.php");

	/**
	 * Cette classe permet de gérer la connection à la base de données
	 * @author Baptiste Wicht
	 */
	class Database{
		private $link = false;
		private $db;
		private $connected = false;
		
		/**
		 * Cette méthode permet d'ouvrir la connexion à la base de données
		 *
		 */
		public function openConnection(){
			$this->link = mysql_connect("localhost", "root", "") or die("Impossible de se connecter : " . mysql_error());
			$this->db = mysql_select_db("db_easyupload", $this->link);
			
			if(!$this->link){
				return false;
			}
			
			$this->connected = true;
			return true;
		}
		
		/**
		 * Cette méthode permet de fermer la connection à la base de données
		 *
		 */
		public function closeConnection(){
			mysql_close($this->link) or die("Impossible de fermer la connection : " . mysql_error());
			$this->connected = false;
		}
		
		/**
		 * Cette méthode permet de savoir si la connection à la base de données est ouverte ou non
		 *
		 * @return true si connecté, sinon false
		 */
		public function isConnected(){
			return $this->connected;
		}
		
		/**
		 * Cette méthode permet d'effectuer une requête Select dans la base de données
		 * @param $request Requête à effectuer
		 * 
		 * @return un objet Request contenant la requête
		 */
		public function requestSelect($request){
			$data = mysql_query($request);
			
			if(!data){
				return false;
			}
			
			return new Request($data, $request);
		}
		
		/**
		 * Cette méthode permet d'effectuer une requête Upadte, delete, insert dans la base 
		 * de données
		 * @param $request La requête à effectuer
		 * 
		 * @return true si la requête a réussi ou false si non 
		 */
		public function requestUpdate($request){
			return mysql_query($request) or die(mysql_error());
		}
	}
?>

<?php
	/**
	 * Cette classe représente le résultat d'une requête
	 * @author Baptiste Wicht
	 */
	class Request{
		private $data;
		private $request;
		
		/**
		 * Constructeur de la classe
		 *
		 * @param $newData Le résultat du mysql_fetch_array pour la requête
		 * @param $newRequest La requête en question
		 */
		public function __construct($newData, $newRequest){
			$this->data= $newData;
			$this->request = $newRequest;
		}
		
		/**
		 * Cette méthode retourne une valeur de la requête
		 *
		 * @param $identifier Ce qu'on veut chercher
		 */
		public function getData(){
			return $this->data;
		}

		/**
		 * Cette méthode retourne la requête
		 *
		 * @return La requête
		 */
		public function getRequest(){
			return $this->request;
		}
		
		/**
		 * Destructeur de la requête, il s'occuppe de libérer le résultat SQL
		 *
		 */
		public function __destruct(){
			mysql_free_result($this->data);
		}
	}
?>


Consultez les autres pages sources


Valid XHTML 1.0 TransitionalValid CSS!