Bonjour,
Tout d'abord, je m'excuse par avance si le sujet à déjà été traité, mais je n'arrive pas a trouver d'explication claire sur ce point..
Je suis en train de réécrire tout un ensemble de fichiers PHP car mon prédécesseur à eu la bonne idée de coder sa connexion à la base de données dans chaque fichier plutôt que de faire un include..
Pour un petit nombre de fichiers, ça peut être rigolo, mais je me retrouve avec 533 fichiers et 15xx connexions à modifier ...
J'ai donc réussi à inclure un fichier de connexion dans ce style
Et un autre fichier qui y fait appel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <?php $nom = ''; $prenom = ''; $civilite = ''; mysql_connect('host', 'user', 'pass') or die('<h1>Connexion au serveur impossible: !</h1>'); mysql_select_db('bdd')or die('<h1>Connexion impossible � la base</h1>'); function get_info($id){ $requete = 'SELECT * FROM user WHERE id= "' .$id.'"'; $sql = mysql_query($requete) or die (mysql_error()); while($row = mysql_fetch_array($sql)){ global $nom,$prenom,$civilite; $nom=$row["NOM"]; $prenom= $row["PRENOM"]; $civilite=$row["CIVILITE"]; } }; ?>
Quand je fait un test directement depuis le fichier de connexion, mes variables contiennent les informations demandées, par contre quand je les appel depuis le fichier avec le "include", il me renvoie des chaines vides..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php include '../test/connect.php'; $v_id = $_GET['login']; get_info($v_id); echo $nom; echo $prenom ; echo $civilite=; mysql_close(); ?>
J'aimerais comprendre la portée des variables en php, j'ai l'habitude des langages plus typés (Delphi) donc je suis assez perdu avec cette situation![]()
Partager