Pb avec include du fichier de connexion à la base

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Pb avec include du fichier de connexion à la base

Re: Pb avec include du fichier de connexion à la base

par Stegue » 24 nov. 2013, 19:30

C'est pas terrible mais si je fais include sur include c'est que malgré mon niveau, j'essaie d'avoir un peu plus sur mon site que je ne sais faire. :?
Je télécharge quelques scripts tout fait comme les votes etc. Il y a souvent un fichier de config. qu'il suffit de remplir. Je préfère inclure l'unique fichier connexion pour une meilleure gestion du mot de passe. Et la plupart du temps, ça marche bien. Je pourrais inclure directement le fichier de connexion mais comme il y a d'autres paramètres dans le fichier config, ça me fait reprendre beaucoup de chose.

Pour ce cas, j'ai essayé. Mais c'est pareil.
include("include/connexbdd.php");
define('PULSE_DIR', 'Pulse_quest');
En ajoutant ça pour le test.
echo"$hostname";
echo"$user";
echo"$password";
echo"$nom_base_donnees";
J'ai bien mes identifiants qui s'affichent mais dés que je vote:
Cannot connect to database. Please try again.
:?
Est ce que l'on t'à déjà parlé de mysqli ?
J'en suis pas là encore. :wink:

Re: Pb avec include du fichier de connexion à la base

par moogli » 24 nov. 2013, 15:26

En fait ce que je ne comprend pas depuis le début c'est pourquoi tu inclus le fichier de connexion et que tu refait la même chose dans le fichier incluant.

De plus, comme déjà dit, tu peux simplifier ton code en virant les constantes inutile ainsi que les @ qui font que ne peux savoir s'il y a problème de connexion ou de sélection de base de données.

En gros ton fichier devrais être :
<?php 
include 'connexion.php';
$sql ='select version()'
$ret = mysql_query($sql);
// etc, tu traite le retour et le fetch
?>
C'est un exemple mais la logique est la.

Est ce que l'on t'à déjà parlé de mysqli ?
En remplacement de l'extension mysql histoire de préparer ton code "pour l'avenir" ? ;)


@+

Re: Pb avec include du fichier de connexion à la base

par Stegue » 23 nov. 2013, 16:29

En fait, non, l'include du fichier de connexbdd.php fonctionne bien puisque sur un test, j'arrive à afficher mes identifiants.

Donc, en résumé, mon fichier de config. récupère bien les infos de connexion à la BDD mais ne s'y connecte pas.

Re: Pb avec include du fichier de connexion à la base

par Stegue » 21 nov. 2013, 23:17

Si j'ai bien compris, j'arrive à ce résultat = 28663.

Re: Pb avec include du fichier de connexion à la base

par moogli » 21 nov. 2013, 22:54

le nombre 30711 correspond au paramètrage error_repporting = E_ALL & ~E_STRICT & ~E_NOTICE


@+

Re: Pb avec include du fichier de connexion à la base

par Stegue » 21 nov. 2013, 08:31

Désolé, je décroche encore. :?

Re: Pb avec include du fichier de connexion à la base

par moogli » 20 nov. 2013, 01:18

chaque constante correspond à un entier, il y a un p'tit calcul a faire pour voir à quoi cela correspond.

je te conseil de soustraire des valeurs à E_ALL tu devrais y arriver plus vite :)


































=> E_ALL & ~E_STRICT & ~E_NOTICE
@+

Re: Pb avec include du fichier de connexion à la base

par Stegue » 19 nov. 2013, 23:06

Error_reporting: 30711 :shock:

Re: Pb avec include du fichier de connexion à la base

par moogli » 19 nov. 2013, 08:50

pour ce qui est de l'inclusion du fichier il faut voir dans qu'elle fichier tu te trouve et si ton fichier "incluant" est déjà dans un autre fichier (cas de pseudo frame par exemple).
si c'est le cas c'est l'emplacement du 1er fichier qui compte et pas celui qui inclus ;)
Il te faut savoir dans quel cas tu es et quel est le chemin a utiliser.
Si tu n'as pas d'erreur sur l'inclusion du fichier c'est que ton niveau de rapport d'erreur n'est pas a e_all.

Sur ton pc tu peux le modifier simplement dans le php.ini ensuite tu redémarre le serveur.

Autrement soit avec un.htaccess soit directement dans le code avec un ini_set.
Cela devrais t'afficher un beau message t'indiquant que le fichier n'est pas trouvé et sur tout l'emplacent globale du fichier.

Le jeux des multiple inclusion de fichier est assez pénible et peux faire tourner chèvre si l'on a pas les bonnes informations pour suivre la chose ;)

@+

Re: Pb avec include du fichier de connexion à la base

par Stegue » 19 nov. 2013, 08:40

C'est l'include qui marche pas. En la remplaçant pas les variables du fichier connexbdd.php, ça fonctionne.

C'est ce qui m'interpeler dès le départ.
include("../include/connexbdd.php"); Pourquoi ça marche pas puisque ça renvoie à la racine du site, donc avec le fichier facile à trouver ?
<?php
$hostname = "**************";
$user     = "*************";
$password = "***************";
$nom_base_donnees = "*************";

define('PULSE_DIR', 'Pulse_quest'); // absolute path of the dir where Pulse is; WITHOUT trailing slash

/** DATABASE CONNECTION CONFIGURATION **/
define('HOSTNAME', $hostname); // hostname of your database; it is localhost in most cases
define('USERNAME', $user); // username of the database
define('PASSWORD', $password); // password for the database
define('DATABASE', $nom_base_donnees); // name of the database

mysql_connect(HOSTNAME, USERNAME, PASSWORD)or die("Impossible de se connecter (mauvais host , mauvais pass , mauvais user)");

mysql_select_db(DATABASE)or die("Impossible de se connecter (mauvais nom de BD)");

?>

Re: Pb avec include du fichier de connexion à la base

par moogli » 18 nov. 2013, 22:30

creer un fichier avec dedans
<?php
phpinfo();
et cherche dedans le paramètre : error_reporting;)


@+

Re: Pb avec include du fichier de connexion à la base

par Stegue » 18 nov. 2013, 21:57


connais tu le niveau de rapport d'erreur ?
pour le dev il doit être à E_ALL impérativement sinon tu perds énormément d'information qui peuvent être utile.

@+
J'suis largué là.

Re: Pb avec include du fichier de connexion à la base

par moogli » 18 nov. 2013, 16:41

les " autour des variables sont totalement inutile et "cpuphage" une varaable s'utilise simplement
<?php
include('../include/connexbdd.php');
// histoire de voir ce que les variables ont comme contenu
var_dump($hostname, $user, $password,$nom_base_donnees);
define('PULSE_DIR', 'Pulse_quest'); // absolute path of the dir where Pulse is; WITHOUT trailing slash

mysql_connect($hostname, $user, $password)or die("Impossible de se connecter (mauvais host , mauvais pass , mauvais user)");

mysql_select_db($nom_base_donnees)or die("Impossible de se connecter (mauvais nom de BD)");
connais tu le niveau de rapport d'erreur ?
pour le dev il doit être à E_ALL impérativement sinon tu perds énormément d'information qui peuvent être utile.

@+

Re: Pb avec include du fichier de connexion à la base

par Yetaland » 18 nov. 2013, 15:43

Si tu fais un var_dump de tes variables tu verra bien ...

Re: Pb avec include du fichier de connexion à la base

par Stegue » 18 nov. 2013, 14:25

Pas de message si j'ai pas fait d'erreur.
<?php
include("include/connexbdd.php");



define('PULSE_DIR', 'Pulse_quest'); // absolute path of the dir where Pulse is; WITHOUT trailing slash

/** DATABASE CONNECTION CONFIGURATION **/
define('HOSTNAME', "$hostname"); // hostname of your database; it is localhost in most cases
define('USERNAME', "$user"); // username of the database
define('PASSWORD', "$password"); // password for the database
define('DATABASE', "$nom_base_donnees"); // name of the database

mysql_connect(HOSTNAME, USERNAME, PASSWORD)or die("Impossible de se connecter (mauvais host , mauvais pass , mauvais user)");

mysql_select_db(DATABASE)or die("Impossible de se connecter (mauvais nom de BD)");

?>