Query, Fetch et $GLOBALS en php

Signaler
Messages postés
102
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
22 août 2005
-
Messages postés
102
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
22 août 2005
-
Bonjour,

Je voudrais executer une requete en faisant et fermant la connexion a la base automatiquement.

mysql_query ( string query , resource link_identifier )

Je pense qu'un indiquant le link_identifier, il se connecte et se deconnecte une fois la requete envoyée ?
Si oui je souhaiterais savoir comment est formé ce link_identifier ?

Est ce comme ca ?

$link=mysql_select_db($db, mysql_connect($hote, $compte, $password));
mysql_query(".....", $link):

J'ai essayé sans succes... Et confirmez moi qu'un fetch_ peut s'effectuer offline :)

Sinon je la déclaration des variables globales est elles bien comme ca ?
$GLOBALS['var']=....

Merci

DoR][aN

8 réponses

Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!
$link = mysql_connect('', '', '');

mysql_select_db retourne seulement true ou false

Pour ce qui est de mysql_query, si on ne lui donne pas le deuxième paramètre, elle utilise la dernière connetion ouverte. Si tu en utilise qu'une dans ton script, tu n'es donc pas obligé d'utiliser $link.

Pour fermer la connection, il faut utiliser mysql_close

mysql_fetch_array travaille sur une variable, elle n'a donc pas besoin qu'une connection soit établie à la bdd.

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
102
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
22 août 2005

Oké merci,
je travaillais déjà avec un mysql_query sans préciser le link mais la connexion et fermeture de base automatique m'interesse grandement.
Par contre je trouve ca curieux de ne pas avoir a préciser la bdd lorsqu'on précise le $link. C'est normal ?

DoR][aN
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Le link ne se réfère que à la connection, pas à la base utilisée...

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
102
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
22 août 2005

Je suis pointilleux,
mais si j'ai plusieur bdd avec la meme table comment peut il savoir laquelle je désire interroger ?
DoR][aN
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!

"mais si j'ai plusieur bdd avec la meme table"
C'est le but du mysql_select_db...

Si je suis à coté de la plaque, dis le moi!

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
102
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
22 août 2005

Lol, merci pour ta patience...

En bref actuellement je fais ca :

//Déclarer une fois pr toute ****
function Open() {
$lien = mysql_connect($hote, $compte, $password) or die ("Impossible d'établir la connexion.");
mysql_select_db($db, $lien) or die ("Impossible de se connecter à la base.");
}
//Déclarer une fois pr toute ****
function Close() {
mysql_close() or die("Fermeture impossible de la base.");
}

//Pour chaque requete ****
Open();
mysql_query("....."):
Close();

Et je voudrais évitez d'appeler tt le tps les 2 fonctions donc essayer de passer par :

//Déclarer une fois pr toute ****
$link = mysql_connect('', '', '');

//Pour chaque requete ****
mysql_query(".....", $link);

Mais alors ou placer mon "mysql_select_db" que je desire aussi avoir en constante ?

Mon but étant d'avoir la requete avec la connexion et la deconnexion automatique en precisant le $link et un minimum de code.

DoR][aN
Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
Salut!
Tu peux laisser tomber le $link si tu n'utilises pas plusieurs connections en même temps:

function Open() {
mysql_connect($hote, $compte, $password) or die ("Impossible d'établir la connexion.");
mysql_select_db($db) or die ("Impossible de se connecter à la base.");
}

//Déclarer une fois pr toute ****
function Close() {
mysql_close() or die("Fermeture impossible de la base.");
}


Un dernier truc, le mysql_close n'est pas absolument nécessaire puisqu'il s'agit d'une connection non-persistante et qu'elle se termine à la fin du script (au contraire de mysql_pconnect)

@++

R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
Messages postés
102
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
22 août 2005

Oké merci beaucoup je ne change rien a ma façon de faire alors.

++ A la prochaine

DoR][aN