# PHP > PHP & Base de donnes >  mysql ou mysqli

## irishcrew

Salut,

J'utilise ce code :


```

```

Sur une de mes pages, je n'ai aucun problme.
Mais, sur une autre, j'ai le message d'erreur suivant :




> Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in Z:\Sebastien\portail_aq_rate\password.php on line 10
> mail inconnu.


Je ne comprends pas bien ce qu'est le mysqli.
Dois-je l'utiliser partout? Pourquoi il plante sur une de mes pages mais pas toutes ?

D'avance merci, pour vos infos

----------


## armel18

> Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future:


bonjour,
l'extension mysql est obsolte depuis php5.5 et sera supprime dans le futur. A la place de mysql, utilises plutt l'extension mysqli ou pdo_mysql:



```

```


tu trouveras des exemples sur cette page:
mysqli

----------


## irishcrew

Merci pour ta rponse.

Le mysql_select_db est obsolte aussi alors?

----------


## sabotage

C'est l'extension mysql qui est obsolte.
Donc toutes les fonctions mysql_

----------


## irishcrew

ok, je vais toutes les modifier.
Merci!

----------


## armel18

en fait toute l'extension  mysql_*(quel que soit ce qui vient aprs) est obsolte y compris mysql_select_db.

A la place tu peux choisir son quivalent mysqli: *mysqli_select_db($link, "bd")*.


```

```


d'ailleurs si tu as une seule base de donnes tu n'est pas oblig d'en slectionner  avec mysqli_select_db ds lors que tu l'as dj indiqu au moment de la connexion.

----------


## Bovino

> l'extension mysql est obsolte depuis php5.5 et sera supprime dans le futur.


En fait, pour tre plus prcis, l'extension mysql-* est obsolte, car non maintenue, depuis trs longtemps, ce qui change, c'est que PHP 5.5 la considre dsormais comme *deprecated*.  :;): 

Cela signifie que a fait dj plusieurs annes qu'il est recommand de ne plus l'utiliser car elle tait sur le point d'tre dprcie, ce qui est dsormais le cas !

----------


## irishcrew

Du coup j'ai russi a faire certaines choses.

Par contre, j'ai le bloc suivant :


```

```

Et la je ne vois pas comment faire pour transformer, j'ai fait cela mais ca ne marche pas (peut-tre du  mon sql) :


```

```

----------


## armel18

autrement essaies cette requte et fais un debug sur le rsultat de la requte:



```

```

----------


## irishcrew

> Parse error: syntax error, unexpected ';' in Z:\Sebastien\portail_aq_rate\index.php on line 17


j'ai ce message sur la ligne


```
var_dump($result->fetch_object();
```

Ca sert  quoi le var_dump?

----------


## armel18

normal, il y a une parenthse fermante qui manque.


```

```

var_dump sert  afficher les informations d'une variable  savoir son type et sa valeur.dans le cas d'un tableau var_dump affichera le type(array) et ses valeurs.

----------


## irishcrew

j'ai maintenant 



> Parse error: syntax error, unexpected '$result' (T_VARIABLE), expecting '(' in Z:\


Pour cette ligne


```
if $result->num_rows == 1; {
```

----------


## Bovino

C'est pas vraiment comme a qu'on crit un if en PHP...  ::roll::

----------


## amoiraud

Pour complter la rponse de Bovino :



```

```

----------


## irishcrew

ca l'air deja mieux!

----------


## dev14

Si vous saviez le nombre de personnes qui sont encore sur mysql_, php4 avec les vieilles balises <? ?> par flemme de tout changer.... et le pire, c'est que leurs clients pensent avoir quelqu'un de comptent en face ! Parole d'un sous-traitant !

----------


## beegees

> ok, je vais toutes les modifier.
> Merci!


Utilise PDO, c'est hyper facile  utiliser et super scuris (si tu les couple  des requtes prpares)

bee

----------

