Il est parfois nécessaire de pouvoir utiliser la version 5 de PHP, or chez Free c'est généralement du PHP4 par défaut.
Pour y remédier, ouvrez votre bloc note (utilisez Notepad++ de préférence), puis écrivez "PHP1". Faites "Enregistrer sous" puis saisissez ".htaccess" pour le nom du fichier sans y spécifier l'extension.
Il suffira ensuite de le placer dans le répertoire où l'on veut utiliser PHP5.
<?php
mysql_connect($host, $login, $pass);
?>
Ces variables déjà implémentées en PHP, permettent de fournir des informations liées au serveur, ou encore au client.
$_SERVER['HTTP_USER_AGENT'] : Indique le navigateur et le système d'exploitation utilisés par le client.
$_SERVER['HTTP_ACCEPT_LANGUAGE'] : Langage accepté par le navigateur client
$_SERVER['REMOTE_ADDR'] : Adresse IP du client
$_SERVER['SERVER_ADDR'] : Adresse IP du serveur
$_SERVER['HTTP_HOST'] : Nom de domaine du serveur
Il en existe beaucoup d'autres, mais ce serait beaucoup trop long à tous les énumérer (et inutile dans notre cas).
<?php
$jour = date("d"); // il est préférable de stocker ces valeurs dans des variables plutôt que d'utiliser date()
$mois = date("m");
$annee = date("Y");
$heure = date("H");
$minutes = date("i");
echo "$jour/$mois/$annee $heure h $minutes";
?>
<?php
$sql = "SELECT champ1, champ2 FROM maTable"; //il faut bien sûr se connecter à la BDD avant
mysql_query($sql);
$sql2 = "INSERT INTO maTable(champ1, champ2) VALUES('$var1', '$var2')";
mysql_query($sql2);
?>
Lorsqu'on utilise PHP, l'usage d'une base de données devient rapidement indispensable. Souvent, on a besoin d'afficher les données d'une ou plusieurs tables.
Ce script affiche les données contenu de maTable à l'aide de la fonction mysql_fetch_assoc(). Celle ci créée un tableau dans lequel chaque colonne correspond à un champ et chaque ligne correspond à une entrée de la table.
<?php
$sql = "SELECT champ1, champ2, champ3 FROM maTable";
$req = mysql_query($sql);
while ($data = mysql_fetch_assoc($req)){ // on récupère les données tant qu'il y en a
echo $data['champ1'];
echo $data['champ2'];
echo $data['champ3'];
echo "<br />";
}
?>
Recherche d'une occurrence
La fonction preg_match() cherche la première occurrence qui correspond au patron, dans une chaîne quelconque. Dès qu'il a trouvé une occurrence, la fonction s'arrête la recherche et retourne l'occurrence trouvée dans un tableau (de taille 1). Sinon il renvoie un false pour dire qu'il n'a rien trouvé.
$ligne = "chaine de caractère dans laquelle la recherche sera faite";
$motif= 'motifAchercher'; //on pourra utiliser des expressions régulières
if (preg_match($patron,$ligne,$tableau)){ // si la fonction trouve quelque chose, il renvoie true
echo $tableau[0];
}
Recherche de plusieurs occurrences
Pour chercher toutes les occurrences d'une chaîne de caractères, on utilise la fonction preg_match_all() Elle a l'avantage de ne nécessiter aucune boucle pour faire la recherche (par contre une boucle sera certainement utile si l'on veut afficher les résultats).
$chaine="votre chaîne dans la quelle la recherche sera faite";
$motif='`motifAChercher`';
preg_match_all($motif,$chaine,$data);
$nb=count($data[0]); // count() nous retourne le nombre d'éléments qu'il y a dans le tableau
for($i=0;$i<$nb;$i++){ // affichage des résultats
echo$data[0][$i].'';
}
Écriture fichier
Un petit script qui ouvre un fichier texte, écrit dedans puis le ferme. On notera ici, que si le script ne trouve pas le fichier, celui-ci sera automatiquement créée.
$donnees = "mon texte à écrire";
$file = fopen("fichier.txt", "a"); // ouverture du fichier en écriture sans écrasement de données
fwrite($file, $donnees); // écriture des données
fclose($file); // ferme le fichier
Le second argument de la fonction fopen() peut prendre différentes valeurs :
r : ouverture en lecture seulement
w : ouverture en écriture seulement
a : ouverture en écriture sans écraser les données existantes
r+ : ouverture en lecture et écriture
w+ : ouverture en lecture et écriture
a+ : ouverture en lecture et écriture sans écraser les données
Pour les options a et a+, si le fichier n'existe pas, il sera alors créée.
Ajouter un arrobase '@' devant le code fautif pour ne plus avoir de warning.