Vous êtes sur la page 1sur 3

MySQLestunebasededonnesimplmentantlelangagederequteSQL.AvecMySQLvous pouvezcrerplusieursbasesdedonnessurunserveur.Unebaseestcomposedetablescontenant desenregistrements(voircoursd'ALSI). CONNEXIONUNEBASE:mysql_connect,mysql_select_db,mysql_close PourseconnecterunebaseavecPHP,ilfautspcifier: unnomoul'IPduserveurMYSQL unnomdutilisateur unmotdepasse unnomdebase. Lafonctiondeconnexion:mysql_connect($server,$user,$password) permetdeseconnecterauserveur$serverentantquutilisateur$useraveclemotdepasse $password.Elleretournelidentifiantdeconnexionsisuccs,FALSEsinon.

non. Lafonction:mysql_select_db($base): permetdechoisirlabase$base,elleretourneTRUEencasdesuccs,sinonFALSE mysql_close():permetdefermerlaconnexion Exemple: $connexion=mysql_connect('localhost','guyon','stephane')ordie('Echecde connexionauserveur.'); mysql_select_db('exemple')ordie('Echecdeslectiondelabase.'); Onpourraavantageusementintgrercecodedansunfichierquelonpourrajoindrepar include().Cestunmoyendescuriserlemotdepassedeconnexion. INTERROGATION:mysql_query Pourinterrogerunebasededonne,c'estdireeffectuerunerequte,onutilisela fonction:mysql_query($requete). Cettefonctionprendpourparamtreunechanedecaractresquicontientlarequtecriteen SQLetretourneunidentificateurdersultatouFALSEsichec. TableUTILISATEUR id 1 2 3 tristan anouk celian

COURS10:PHPMYSQL

login tr120

password an320 cel630

Exemple: $requete=('SELECT*FROMUTILISATEUR'); $result=mysql_query($requete)ordie("Echecdelarequete:$requete");

Lidentificateurdersultat$resultpermettradautresfonctionsdextraireligneparligneles donnesretournesparleserveur. Pourgrerlesventuelleserreursderdactiondevosrequtes,vouspouvezutiliserlecode suivant: $result=mysql_query($requete)ordie("Echecdelarequete:$requete"); Onindiquequesi$resultretourneFALSE,onarrteletraitement(die)etonaffichela requte. EXTRACTIONDESDONNES Unefoislarequteeffectueetlidentificateurdersultatacquis,ilneresteplusqu extrairelesdonnesretournesparleserveur. Laffichagedesrsultatsdunerequtesefaitligneparligne.Unebouclepermettrade recueillirchacunedeslignespartirdelidentifiantdersultat($result). Extractiondesdonnesdansuntableauclassique:mysql_fetch_row($result) Lafonctionretourneunelignedersultatsouslaformeduntableau.Leslmentsdutableau tantlesvaleursdesattributsdelaligne.Onaccdeauxdonnespartirdesindices. ElleretourneFALSEsilnyaplusaucuneligneextraire. Exemple1:
while($ligne=mysql_fetch_row($result)){ $id=$ligne[0]; $login=$ligne[1]; $passwd=$ligne[2]; echo$id.''.$login.':'.$passwd.'<br/>'; }

Ici,onaccdeauxvaleursdelaligneparleurindicedansletableau.

Extractiondesdonnesdansuntableauassociatif:mysql_fetch_assoc($result) Lafonctionretourneuntableauassociatif.Lesclstantlesnomsdesattributsetleursvaleurs associesleursvaleursrespectives.ElleretourneFALSEsilnyaplusaucuneligne. Exemple2:


while($ligne=mysql_fetch_assoc($result)){ $id=$ligne['id']; $login=$ligne['login']; $passwd=$ligne['password']; echo$id.''.$login.':'.$passwd.'<br/>'; }

Ici,onaccdeauxvaleursdelaligneparlacldansletableauassociatif. Extractiondesdonnesdansletableaudevotrechoix:mysql_fetch_array($result[,int $result_type=MYSQL_BOTH])) RetourneuntableaudechanesquicorrespondlalignercupreouFALSEs'iln'yaplus delignes.Letypedetableauretourndpenddeladfinitionduparamtreoptionnel result_type.EnutilisantMYSQL_BOTH(dfaut),vousrcuprerezuntableaucontenantdes indicesassociatifsetnumriques.CommepourtouteslesfonctionsPHP,sileparamtre optionneln'estpasprcis,c'estleparamtrepardfautquiestappliqu.Doncl'utilisationde lafonctionmysql_fetch_array($result)retournelafoisuntableaucontenantdesindices associatifsetnumriques.

Unechoseimportantenoterestquel'utilisationdemysql_fetch_array()n'estpas significativementpluslentquel'utilisationdemysql_fetch_row()oumysql_fetch_assoc(), alorsqu'ellefournitplusd'informations.Ilestdoncprfrabled'utilisercettefonction,elleva vouspermettred'extrairelesdonnescommevouslesouhaitez. APPLICATION 1Connectezvousvotrebasededonnes. 2ExcuterlesinstructionsSQLsuivantesafindecrerlatableUTILISATEUR:


droptableifexistsUTILISATEUR; createtableUTILISATEUR( idintnotnullauto_increment, loginvarchar(15)notnull, passwordvarchar(55)notnull, primarykey(id) ); insertintoUTILISATEURvalues('','toto','123456'); insertintoUTILISATEURvalues('','titi','123456'); insertintoUTILISATEURvalues('','tutu','123456');

3crirelesinstructionsPHPpermettantdeseconnectervotrebasededonnesetd'afficher touteslesdonnesdelatableutilisateursouslaformesuivante: login:toto motdepasse:123456

3crirelesinstructionsPHPpermettantd'affichertouteslesdonnesdelatableutilisateurdans untableau: id 1 2 3 tristan anouk celian login tr120 an320 cel630 password