PHP (Introduction)
Transcription
PHP (Introduction)
PHP (Introduction) Les pages web en langage PHP sont de simples fichiers textes, contenant : •du html (+ javascript) et du php •du php tout seul •du html tout seul (dans ce cas autant noter la page avec une extension en html, vous gagnerez en performances) Le php est délimité par des tags. Ces tags permettent de dire à l'interpréteur qu'il devra analyser et exécuter les instructions comprises entre ceux-ci. Voici les tags courants (qu'il vaut mieux employer) : <?php ici votre code php ?> PHP (Introduction) Exemple de code php incorporé dans du code html : <html> <head><title>Du PHP dans du HTML</title> <body> <?php echo '<br />On peut afficher du HTML dans les fonctions PHP, ce n\'est que du texte'; ?> </body> </html> PHP : connexion au SGBD MYSQL Se connecter à une base de données en PHP: Pour se connecter à une base de données, il faut tout d'abord se connecter au serveur MySQL. On utilise pour cela la fonction mysql_connect(). Voici sa syntaxe : <?php mysql_connect ('Votre_serveur_mysql','nom_utilisateur','mot_de_passe'); ?> Une fois la connexion ouverte vous devez sélectionner la base de données à utiliser pour vos futures requêtes. On utilise la fonction mysql_select_db(). Voici sa syntaxe : <?php mysql_select_db('base'); ?> PHP : connexion au SGBD MYSQL Vous pouvez ensuite effectuer des requêtes sur votre base à l'aide de la fonction mysql_query(). <?php mysql_query("SELECT my_fields FROM my_table"); ?> Pour se déconnecter de la base de données (très important sous peine de monopoliser les ressources mysql et de provoquer des erreurs de max_user_connections on utilise la fonction mysql_close() Voici sa syntaxe : <?php mysql_close(); ?> PHP : Résultats de requêtes SELECT Pour traiter via PHP des données contenues dans une base de données Mysql (et récupérées via une requête), on peut utiliser la fonction mysql_fetch_row("requete"); Cette fonction retourne un tableau contenant les valeurs pour la ligne de résultat en cours de traitement. Pour obtenir toutes les valeurs récupérées via la requête, on fait donc une boucle (sauf si vous savez que votre requête ne va retourner qu'un seul enregistrement). ;-) Exemple avec la fonction mysql_fetch_row() : $requete=mysql_query("SELECT champ1,champ2,champ3 FROM ma_table"); while($resultat=mysql_fetch_row($requete)) { $champ1=$resultat[0]; $champ2=$resultat[1]; $champ3=$resultat[2]; } On voit que mysql_fetch_row() retourne un tableau à indices numériques. L'ordre de ce tableau (ici $resultat[]) est donné par l'ordre de sélection des champs dans la requête. Ici le premier champ sélectionné est mail, ensuite signature et ensuite config. PHP : Résultats de requêtes SELECT Exemple avec mysql_fetch_array() : mysql_fetch_array() est légèrement moins rapide que mysql_fetch_row () sur certains calculs. Elle retourne un tableau avec le nom des champs sélectionnés comme indice. L'option MYSQL_ASSOC permet de ne générer qu'un tableau associatif (et non un tableau numérique et un tableau associatif, ce qui améliore les performances) : ;-) $requete=mysql_query("SELECT champ1,champ2,champ3 FROM ma_table"); while($resultat=mysql_fetch_array($requete,MYSQL_ASSOC)) { $champ1=$resultat[‘champ1']; $champ2=$resultat[‘champ2']; $champ3=$resultat['champ3']; }