Page 1 sur 1
[MySQL] extension mysql et mysqli ?
Posté : 01 mai 2007, 16:10
par L0007
Bonjour,
Je débute en MySQL et PHP.
Dans un livre j'ai essayé tous les fonctions de base
mysql( connect,query....) et tout fonctionne.
Apparement, il existe une autre extension:
mysqli.
Cette dernière permet plus de fonctionnalités. Jusque là, je suis
J'ai essayé quelque fonctions
mysqli et ça fonctionne aussi.
Je précise que je fais cette connexion sur une DB avec l'extension
.sql.
Ma question est donc:
Si j'ai bien compris MySQLi est aussi une extension de ma DB(donc un fichier.sql), pas seulement une extension que l'on utilise avec les différentes fonctions (ex.
mysqli_connect()).
J'utilise
WAMP pour
PHP/MYSQL et je travaille en local sur ma machine. Quand je crée une database via
PHPMyAdmin, l'extension est toujours
.sql .
Comment puis-je enregistrer par défaut avec l'extension
.mysqli?
Merci de votre aide,
L0007
Posté : 01 mai 2007, 16:20
par Sékiltoyai
Je n'ai personnellement rien compris à ton problème, quel est le rapport entre une extension php et une extension de fichier ?
Au passage, les fichiers dans lequel on enregistre les requètes SQL sont des fichiers textes, on y met l'extension qu'on veut (.txt, .sql, .machintruc, voire pas d'extension du tout.)
Posté : 01 mai 2007, 16:49
par L0007
Quand je créé un base de données avec PHPMyAdmin, j'obtiens bien un fichier avec l'extension SQL ou je me trompe.
Comme quand on créé une base de données avec interbase, on obtient un fichier "mabase.DB" ou en access un fichier "mabase.MDB".
Je suppose donc qu'avec PHPMyAdmin, j'obtiens un fichier "mabase.SQL".
Ou j'ai tout faux?
Posté : 01 mai 2007, 17:38
par Sékiltoyai
Non, quand on crée une base de données, le serveur MySQL crée les fichiers correspondants dans un dossier spécial, mais en aucun cas ne donne un fichier .sql
A l'exportation, peut être qu'il te retourne un fichier texte, mais le serveur en lui même ne fonctionne pas du tout comme cela...
Posté : 02 mai 2007, 20:21
par L0007
Ok, autant pour moi.
Mais je viens de faire un test.
Quand j'exécute:
Code : Tout sélectionner
mysql_connect($mysqlserver,$mysqllogin,$mysqlpassword);
mysql_select_db($mysqldatabase)
La connexion est réussie.
Quand je fais le test sur la même database:
Code : Tout sélectionner
$link=mysqli_connect($mysqliserver,$mysqlilogin,$mysqlipassword,$mysqlidatabase)
La connexion est réussie.
C'est quand je vais plus loin que j'ai des problèmes
Code : Tout sélectionner
$sql2="SELECT LAB_Id , LAB_Nom FROM label";
$resultat2=mysql_query($sql2)
or trigger_error('Requête invalide',E_USER_ERROR);
// Retour dans un Tableau associatif
$enregistrement=mysql_fetch_assoc($resultat2);
//Afiche le champ - LAB_Id -
echo $enregistrement['LAB_Id'], '<br>';
//Afiche le champ - LAB_Nom -
echo $enregistrement['LAB_Nom'], '<br>';
Ca fonctionne.
Mais quand j'utilise mysqli_
blablbla
Code : Tout sélectionner
$sql="SELECT FOU_Id , FOU_Nom FROM fournisseurs";
$result=mysqli_query($link,$sql)
or trigger_error('Requête invalide', E_USER_ERROR);
echo 'test';
$enregistrement=mysqli_fetch_assoc($result);
//Afiche le champ - FOU_Id -
echo $enregistrement['FOU_Id'], '<br>';
//Afiche le champ - FOU_Nom -
echo $enregistrement['FOU_Nom'], '<br>';
echo 'test';
echo'<br>';
Ca ne fonctionne pas.
Voilà pourquoi j'aimerai connaître le moyen de faire fonctionner des database "sqli" puisqu'apparement il s'agit d'une version plus récente et plus étendue que "sql".
J'aimerais savoir comment définir que je voudrais un database qui fonctionne au format "sqli"
J'espère avoir été un peu plus clair

Posté : 02 mai 2007, 21:19
par Sékiltoyai
Ca ne fonctionne pas.
Ca ne veut rien dire. Tu as une erreur ou quelquechose ?
Posté : 02 mai 2007, 21:29
par orgerix
Verifie ta version de MySQL
L'extension MySQLi est conçue pour fonctionner avec la version 4.1.3 ou plus
Posté : 03 mai 2007, 14:20
par L0007
J'ai vérifier la version MySQl, elle est à jour.
Posté : 03 mai 2007, 14:21
par L0007
Ca ne fonctionne pas.
Ca ne veut rien dire. Tu as une erreur ou quelquechose ?
L'erreur que j'ai est la suivante.
Code : Tout sélectionner
PHP Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in D:\www\PHP5_Avanc\MySQL\mysqli\mysqliConnection.php on line 19
Donc pas d'erreur à la connexion mais bien lorsque j'essaye de faire
mysqli_query().
Posté : 03 mai 2007, 14:40
par L0007
Pour être plus précis par rapport à mon problème j'ai ouvert un nouveau message sur le forum PHP5 (
http://www.phpfrance.com/forums/voir_sujet-29457.php).
Je ne sais pas très bien si je laisse ce message sur le Forum SQl ou PHP5...
Posté : 07 mai 2007, 15:45
par L0007
Ma question n'atait pas très précise.
Tout à été résolu dans le post cité ci-dessus.