Je viens de terminer le projet sur lequel je travaillais récemment et je suis assez libre. Venez ici et partagez avec vous certaines des compétences que j'ai accumulées !
1. Concernant la première méthode de redirection PHP : header("Location: index.php");
Méthode 2 : echo "<script>window.location ="$PHP_SELF";</script>";
Troisième méthode : echo "<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php">"
2. Obtenez le navigateur du visiteur.
fonction parcourir_infor() {
$browser="";$browserver="";
$Browsers =array("Lynx","MOSAIC","AOL","Opera","JAVA","MacWeb","WebExplorer","OmniWeb");
$Agent = $GLOBALS["HTTP_USER_AGENT"];
pour ($i=0; $i<=7; $i++) {
if (strpos($Agent,$Browsers[$i])) {
$navigateur = $Navigateurs[$i];
$browser="";
}
}
if (ereg("Mozilla",$Agent) && !ereg("MSIE",$Agent)) {
$temp =explode("(", $Agent); $Part=$temp[0];
$temp =explode("/", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver); $browserver=$temp[0];
$browserver =preg_replace("/([d.]+)/"," \1",$browserver );
$browser = " $browser";
$navigateur = "Netscape Navigator" ;
}
if (ereg("Mozilla",$Agent) && ereg("Opera",$Agent)) {
$temp =explode("(", $Agent); $Part=$temp[1];
$temp =explode(")", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver);$browserver=$temp[2];
$browserver =preg_replace("/([d.]+)/"," \1",$browserver );
$browser = " $browser";
$navigateur = "Opéra" ;
}
if (ereg("Mozilla",$Agent) && ereg("MSIE",$Agent)) {
$temp = éclater("(", $Agent); $Part=$temp[1];
$temp = exploser(";",$Part); $Part=$temp[1];
$temp = éclater(" ",$Part);$browserver=$temp[2];
$browserver =preg_replace("/([d.]+)/"," \1",$browserver );
$browser = " $browser";
$navigateur = "Internet Explorer" ;
}
si ($navigateur!="") {
$browseinfo = "$browser$browserver";
}autre {
$browseinfo = "Inconnu" ;
}
renvoie $browseinfo ;
}
//Appelle la méthode $browser=browseinfo(); renvoie directement le résultat
3. Récupère le système d'exploitation du visiteur
fonction osinfo() {
$os="";
$Agent = $GLOBALS["HTTP_USER_AGENT"];
if (eregi('win',$Agent) && strpos($Agent, '95')) {
$os="Windows 95";
}
elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90')) {
$os="Windows ME" ;
}
elseif (eregi('win',$Agent) && ereg('98',$Agent)) {
$os="Windows 98";
}
elseif (eregi('win',$Agent) && eregi('nt 5.0',$Agent)) {
$os="Windows 2000";
}
elseif (eregi('win',$Agent) && eregi('nt',$Agent)) {
$os="Windows NT" ;
}
elseif (eregi('win',$Agent) && eregi('nt 5.1',$Agent)) {
$os="Windows XP" ;
}
elseif (eregi('win',$Agent) && ereg('32',$Agent)) {
$os="Windows 32" ;
}
elseif (eregi('linux',$Agent)) {
$os="Linux";
}
elseif (eregi('unix',$Agent)) {
$os="Unix";
}
elseif (eregi('soleil',$Agent) && eregi('os',$Agent)) {
$os="SunOS";
}
elseif (eregi('ibm',$Agent) && eregi('os',$Agent)) {
$os="IBM OS/2";
}
elseif (eregi('Mac',$Agent) && eregi('PC',$Agent)) {
$os="Macintosh";
}
elseif (eregi('PowerPC',$Agent)) {
$os="PowerPC" ;
}
elseif (eregi('AIX',$Agent)) {
$os="AIX";
}
elseif (eregi('HPUX',$Agent)) {
$os="HPUX";
}
elseif (eregi('NetBSD',$Agent)) {
$os="NetBSD";
}
elseif (eregi('BSD',$Agent)) {
$os="BSD";
}
elseif (ereg('OSF1',$Agent)) {
$os="OSF1";
}
elseif (ereg('IRIX',$Agent)) {
$os="IRIX";
}
elseif (eregi('FreeBSD',$Agent)) {
$os="FreeBSD";
}
if ($os=='') $os = "Inconnu";
retourner $os ;
}
//Appelle la méthode $os=os_infor();
4. Classe de format de fichier
$mime_types = array(
'gif' => 'image/gif',
'jpg' => 'image/jpeg',
'jpeg' => 'image/jpeg',
'jpe' => 'image/jpeg',
'bmp' => 'image/bmp',
'png' => 'image/png',
'tif' => 'image/tiff',
'tiff' => 'image/tiff',
'pict' => 'image/x-pict',
'pic' => 'image/x-pict',
'pct' => 'image/x-pict',
'tif' => 'image/tiff',
'tiff' => 'image/tiff',
'psd' => 'image/x-photoshop',
'swf' => 'application/x-shockwave-flash',
'js' => 'application/x-javascript',
'pdf' => 'application/pdf',
'ps' => 'application/postscript',
'eps' => 'application/postscript',
'ai' => 'application/postscript',
'wmf' => 'application/x-msmetafile',
'css' => 'text/css',
'htm' => 'texte/html',
'html' => 'texte/html',
'txt' => 'texte/plain',
'xml' => 'texte/xml',
'wml' => 'texte/wml',
'wbmp' => 'image/vnd.wap.wbmp',
'mid' => 'audio/midi',
'wav' => 'audio/wav',
'mp3' => 'audio/mpeg',
'mp2' => 'audio/mpeg',
'avi' => 'video/x-msvideo',
'mpeg' => 'vidéo/mpeg',
'mpg' => 'vidéo/mpeg',
'qt' => 'vidéo/quicktime',
'mov' => 'video/quicktime',
'lha' => 'application/x-lha',
'lzh' => 'application/x-lha',
'z' => 'application/x-compress',
'gtar' => 'application/x-gtar',
'gz' => 'application/x-gzip',
'gzip' => 'application/x-gzip',
'tgz' => 'application/x-gzip',
'tar' => 'application/x-tar',
'bz2' => 'application/bzip2',
'zip' => 'application/zip',
'arj' => 'application/x-arj',
'rar' => 'application/x-rar-compressed',
'hqx' => 'application/mac-binhex40',
'sit' => 'application/x-stuffit',
'bin' => 'application/x-macbinary',
'uu' => 'text/x-uuencode',
'uue' => 'text/x-uuencode',
'latex' => 'application/x-latex',
'ltx' => 'application/x-latex',
'tcl' => 'application/x-tcl',
'pgp' => 'application/pgp',
'asc' => 'application/pgp',
'exe' => 'application/x-msdownload',
'doc' => 'application/msword',
'rtf' => 'application/rtf',
'xls' => 'application/vnd.ms-excel',
'ppt' => 'application/vnd.ms-powerpoint',
'mdb' => 'application/x-msaccess',
'wri' => 'application/x-mswrite',
);
5. Générer un document Excel avec php
<?
header("Type de contenu:application/vnd.ms-excel");
header("Content-Disposition:filename=test.xls");
écho "test1t" ;
echo "test2tn" ;
écho "test1t" ;
echo "test2tn" ;
écho "test1t" ;
echo "test2tn" ;
écho "test1t" ;
echo "test2tn" ;
écho "test1t" ;
echo "test2tn" ;
écho "test1t" ;
echo "test2tn" ;
?>
//Modifiez l'en-tête du fichier correspondant pour obtenir des formats de fichier de sortie
tels que .doc.
Première méthode :
//$db->rows[$i][date] est la valeur du champ datetime dans la base de données.
$aujourd'hui=heure();
$theDay=date("Ymd H:i:s",$today-24*3600);
$newTag=$db->rows[$i][date]>=$theDay?"<img src='../image/newinfor.gif'>": "";
Deuxième méthode :
$newTag=$db->rows[$i][date]>=date("Ymd 00:00:00")?"<img src='../image/newinfor.gif'>": "";
7. Exemple d'encapsulation de base de données
<?php
//------------------------------------------------ ------------------------------------------
// ※Constructeur Database(), paramètres initiaux de la base de données
// ※Requête Select()
// ※GetRows() renvoie le nombre total d'enregistrements interrogés
// ※Insert() insérer un enregistrement
// ※Mise à jourUpdate()
// ※Delete() supprimer
// ※Halt() interrompt et affiche un message d'erreur*/
//------------------------------------------------ ------------------------------------------
définir("DATABASETYPE","1"); //Définir le type de base de données : 1 est MySql ; 2 est SQL Server ; 3 est Oracle 4 est Odbc ;
définir("SERVER","localhost"); //Nom d'hôte ou adresse IP du serveur de base de données
définir("DATABASE","dbName"); //Le nom de la base de données à connecter
définir("USER","tableName"); //Nom d'utilisateur utilisé pour se connecter à la base de données
définir("MOT DE PASSE", "paswd"); //Mot de passe utilisé pour se connecter à la base de données
Base de données de classe{
var $dbLink; // Descripteur de connexion
var $result; //descripteur de requête
var $insId; //Insert() renvoie avec succès la valeur de la colonne AUTO_INCREMENT
var $rows; //Renvoyer le tableau de données
var $numRows; //Renvoie le nombre de données
var $dbHost, $dbUser, $userPassword, $database ;
var $dbType=DATABASETYPE;
var $msgFlag = "yes" ; //oui : afficher le message Mysql ; non : mourir en affichant "Halted".
fonction Base de données($dbHost=SERVER,$dbUser=USER,$userPassword=PASSWORD,$database=DATABASE){
switch($this->dbType){
cas 1 :
$this->dbLink=@mysql_pconnect($dbHost,$dbUser,$userPassword);// ou die("Impossible de se connecter à l'hôte distant !");
@mysql_select_db($database,$this->dbLink);// ou die ("Impossible de se connecter à l'hôte distant !");
casser;
cas 2 :
casser;
}
renvoie vrai ;
}
/*SQL:Select() renvoie false et n'a aucun résultat*/
fonction Sélectionner($table,$colonnes,$condition=1){
$sql="sélectionnez $colonnes de $table où $condition ";
//écho $sql."<br>";
$this->result=@mysql_query($sql,$this->dbLink);
unset($this->rows);
si($this->résultat){
$i=0 ;
if(!($this->rows=array("$i"=>@mysql_fetch_array($this->result))))
renvoie faux ;
if(($this->numRows=@mysql_num_rows($this->result))==0)
renvoie faux ;
while( $tempRows=@mysql_fetch_array($this->result )){
array_push($this->rows,$tempRows);
}
}autre{
$this->Halt($sql);
renvoie faux ;
}
renvoie vrai ;
}
/*SQL:GetRows() renvoie le nombre total d'enregistrements interrogés*/
fonction GetRows($table,$condition=1){
$sql="select count(1) comme nombre à partir de $table où $condition";
//écho $sql."<br>";
$this->result=@mysql_query($sql,$this->dbLink);
si($this->résultat){
$temp=@mysql_fetch_array($this->result );
$this->numRows=$temp[count];
}autre{
$this->Halt($sql);
renvoie faux ;
}
return $this->numRows ;
}
/*SQL:Insérer()*/
fonction Insérer($table,$colonnes,$valeurs){
$sql="insérer dans les valeurs $table ($columns) ($values)";
//écho $sql;
$this->result=@mysql_query($sql,$this->dbLink);
si ($this->résultat)
$this->insId=@mysql_insert_id($this->dbLink);
autre{
$this->Halt($sql);
renvoie faux ;
}
renvoie vrai ;
}
/*SQL:Mise à jour()*/
fonction Mise à jour($table,$settings,$condition){
$sql="update $table set $settings où $condition";
//écho $sql;
$this->result=@mysql_query($sql,$this->dbLink);
si ($this->résultat)
$this->numRows=@mysql_affected_rows($this->result);
autre{
$this->Halt($sql);
renvoie faux ;
}
renvoie vrai ;
}
/*SQL:Supprimer*/
fonction Supprimer($table,$condition){
$sql="supprimer de $table où $condition";
$this->result=@mysql_query($sql,$this->dbLink);
si ($this->résultat)
$this->numRows=@mysql_affected_rows($this->result);
autre{
$this->Halt($sql);
renvoie faux ;
}
renvoie vrai ;
}
/*Halt() :message d'erreur */
fonction Arrêt($msg){
if($this->msgFlag=="oui"){
printf("<b>Erreur de requête de base de données :</b> %s<br>n", $msg);
printf("<b>Erreur MySql :</b> %s<br>n",mysql_error());
}autre
echo "<META HTTP-EQUIV=REFRESH CONTENT='0;URL=../include/error.htm'>";//Personnaliser un fichier de messages d'erreur
renvoie faux ;
}
}
commutateur($db->dbType){
cas 1 :
@mysql_close();
casser;
cas 2 :
casser;
}
$db = nouvelle base de données();
?>