Page 1 sur 2
[ Résolu] erreur var_dump
Posté : 02 févr. 2011, 10:02
par 63renaud
Bonjour
Je veux tester mon tableau $ligne mais j'ai cette erreur
var_dump($ligne); réponse bool(false).
cela vient d'ou cette erreur.
je suis bien connecté à ma base de données.
voici le code
Code : Tout sélectionner
<?php
// Connexion au serveur
$hote='localhost'; // le chemin vers le serveur
$nom_bd='base_fred'; // le nom de la base de données
$utilisateur='root'; // nom d'utilisateur pour se connecter
$pwd=''; // mot de passe de l'utilisateur pour se connecter
try
{
$c=mysql_connect("$hote","$utilisateur","$pwd");
$b=mysql_select_db("$nom_bd", $c);
}
catch (Exception $ex)
{
echo 'Erreur : '.$ex->getMessage().'<br />';
echo 'N° : '.$ex->getCode();
}
?>
<?php
//------------------------------------------------------------ lecture des lignes et mettre en format graphique( formatage)
$detail=$_GET['id_xguest'];
// Préparation et execution de la requête
$rq = mysql_query("SELECT * FROM client WHERE id_xguest='$detail'") or die (mysql_error()) ;
$ligne=mysql_fetch_array($rq);
?>
<div id="principal">
<div id="label_haut">
<div id="label_client">
<label>CLIENT</label>
</div>
</div>
<div id="text_box">
<?php
//------------------------------------------------------------ lecture des lignes et mettre en format graphique( formatage)
$detail=$_GET['id_xguest'];
// Préparation et execution de la requête
$rq ="SELECT * FROM client WHERE id_xguest='$detail'" or die (mysql_error()) ;
$result_set=mysql_query($rq);
$ligne=mysql_fetch_array($result_set);
var_dump ($ligne) ;
?>
Re: erreur var_dump
Posté : 02 févr. 2011, 10:05
par xTG
Bon déjà soit on fait du PDO, soit on fait avec mysql_ mais on mélange pas les deux.

mysql_ ne renvoie aucune exception !
Ensuite tu ne vérifies en rien la variable que tu insères dans la requête.
Fais donc une vérification dessus (!empty() par exemple) et tu trouveras j'en suis sûr rapidement ton erreur.
Re: erreur var_dump
Posté : 02 févr. 2011, 11:52
par 63renaud
merci pour ton aide j'ai nétoyyer tous mon code, mais comment faire la vérification avec (!empty())
merci
Re: erreur var_dump
Posté : 02 févr. 2011, 12:05
par stealth35
merci pour ton aide j'ai nétoyyer tous mon code, mais comment faire la vérification avec (!empty())
merci
comme t'as dis xTG mysql_* ne renvoie pas d'exception ton tu peux surpimer ton bloque try...catch, ensuite pour voir les erreurs de mysql c'est :
ini_set('mysql.trace_mode', true);
a mettre au début de ton code
et ca :
$rq ="SELECT * FROM client WHERE id_xguest='$detail'" or die (mysql_error()) ;
ca veut pas dire grand chose...
Re: erreur var_dump
Posté : 02 févr. 2011, 12:12
par 63renaud
oui je viens de tout nettoyer
le fichier mysql_connect.php
Code : Tout sélectionner
<?php
// Connexion au serveur
$hote='localhost'; // le chemin vers le serveur
$nom_bd='base_fred'; // le nom de la base de données
$utilisateur='root'; // nom d'utilisateur pour se connecter
$pwd=''; // mot de passe de l'utilisateur pour se connecter
ini_set('mysql.trace_mode', true);
$c=mysql_connect("$hote","$utilisateur","$pwd");
$b=mysql_select_db("$nom_bd", $c) or die (mysql_error()) ;
?>
le fichier afficher_client.php avec la fonction if (!empty($ligne))
Code : Tout sélectionner
<title>Afficher un Client</title>
<?php
include_once'lien_css.php';
?>
<body>
<div id="global">
<?php
include_once 'header.php';
?>
<?php
require_once'mysql_connect.php';
?>
<?php
//------------------------------------------------------------ lecture des lignes et mettre en format graphique( formatage)
$detail=$_GET['id_xguest'];
// Préparation et execution de la requête
$rq ="SELECT * FROM client WHERE id_xguest='$detail'" ;
$result_set=mysql_query($rq) or die (mysql_error()) ;
$ligne=mysql_fetch_array($result_set) ;
if (!empty($ligne)) {
echo '$ligne';
}
?>
<div id="principal">
<div id="label_haut">
<div id="label_client">
<label>CLIENT</label>
</div>
</div>
<div id="text_box">
<label>Nom</label><?php echo $ligne['xguest_nom'];?>
</div><!-- fin div texbox -->
</div><!-- fin div principal -->
</div> <!-- fin div global-->
</body>
</html>
mais rien ne s'affiche.
Le label nom s'affiche bien mais pas le nom du client qui a été sélectionné sur une autre page .
Merci
merci
Re: erreur var_dump
Posté : 02 févr. 2011, 12:18
par stealth35
echo '$ligne';
va te renvoyer
$ligne
et $ligne est un array, donc c'est var_dump ou print_r pour l'affiche mais pas echo
ensuite vérifie ton niveau d'erreur PHP
ini_set('display_errors', 1);
error_reporting(-1);
pour le forum afficher du PHP c'est avec le bouton PHP, pas le CODE
Re: erreur var_dump
Posté : 02 févr. 2011, 12:28
par 63renaud
merci pour ta patience et toute ton aide
voici le nouveau code
<title>Afficher un Client</title>
<?php
include_once'lien_css.php';
?>
<body>
<div id="global">
<?php
include_once 'header.php';
?>
<?php
require_once'mysql_connect.php';
?>
<?php
//------------------------------------------------------------ lecture des lignes et mettre en format graphique( formatage)
$detail=$_GET['id_xguest'];
// Préparation et execution de la requête
$rq ="SELECT * FROM client WHERE id_xguest='$detail'" ;
$result_set=mysql_query($rq) or die (mysql_error()) ;
$ligne=mysql_fetch_array($result_set) ;
?>
<div id="principal">
<div id="label_haut">
<div id="label_client">
<label>CLIENT</label>
</div>
</div>
<div id="text_box">
<label>Nom</label><?php echo $ligne['xguest_nom'];?>
<?php
if (!empty($ligne)) {
var_dump ($ligne);
}
ini_set('display_errors', 1);
error_reporting(-1);
?>
</div><!-- fin div texbox -->
</div><!-- fin div principal -->
</div> <!-- fin div global-->
</body>
</html>
mais rien ne s'affiche, penses-tu que je devrais faire des testes sur une page vierge?
si je ne trouve pas cette erreur je peux dire adieu à mon BTS car je dois rendre ce travail dans 1 semaine .
Re: erreur var_dump
Posté : 02 févr. 2011, 12:32
par stealth35
ta bien mis les ini_set et error_reporting, ton rendu HTML donne quoi (affichage -> source)
Re: erreur var_dump
Posté : 02 févr. 2011, 12:37
par 63renaud
voilà l'erreur que j'ai trouvé en bas de la page
<b>Warning</b>: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in <b>Unknown</b> on line <b>0</b><br />
la page complète
<title>Afficher un Client</title>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="Css/controle.css"/>
<link rel="stylesheet" type="text/css" href="Css/header.css"/>
<link rel="stylesheet" type="text/css" href="Css/base.css"/>
<link rel="stylesheet" type="text/css" href="Css/menu.css"/>
<link rel="stylesheet" type="text/css" href="Css/liste.css"/>
</head>
<body>
<div id="global">
<div id="header">
<div id="listeMenu">
<ul>
<li><a> AFFICHER</a>
<ul>
<li><a href="afficher_liste_client.php"> Clients</a></li>
<li><a href="afficher_prospect.php">Prospect</a></li>
<li><a href="afficher_photographe.php">Photographes</a></li>
</ul>
</li>
<li><a>AJOUTER</a>
<ul>
<li><a href="ajouter_client.php"> Clients</a></li>
<li><a href="ajouter_prospect.php">Prospect</a></li>
<li><a href="ajouter_photographe.php">Photographes</a></li>
</ul>
</li>
<li><a>CONTROLE DE SAISIE</a>
<ul>
<li><a href="controle_client.php"> Clients</a></li>
<li><a href="controle_prospect.php">Prospect</a></li>
<li><a href="controle_photographe.php">Photographes</a></li>
</ul>
</li>
<li>
<input type="text" name="rechercher"value="rechercher"/>
</li>
</ul>
</div>
<!--Fin Menu Onglets-->
</div> <!-- fin div header -->
<div id="colonne_gauche">
<div id="fleche_preced">
<img src="images/fleche_precedent.gif" alt="precedent"/>
</div>
<div id="colonne_droite">
<div id="fleche_suiv">
<img src="images/fleche_suivant.gif" alt="suivant"/>
</div>
</div>
</div>
<div id="principal">
<div id="label_haut">
<div id="label_client">
<label>CLIENT</label>
</div>
</div>
<div id="text_box">
<label>Nom</label>
</div><!-- fin div texbox -->
</div><!-- fin div principal -->
</div> <!-- fin div global-->
</body>
</html>
<br />
<b>Warning</b>: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result
Re: erreur var_dump
Posté : 02 févr. 2011, 12:48
par stealth35
la gestion des erreurs doit être au tout début du code. ton var_dump ligne dois être hors du empty
Re: erreur var_dump
Posté : 02 févr. 2011, 12:56
par 63renaud
je viens de mettre le code en tout début de ma page
<?php
if (!empty($ligne)) {
}
ini_set('display_errors', 1);
error_reporting(-1);
?>
et var_dump en dessous du label nom
voici les erreurs
Notice: Undefined index: id_xguest in C:\wamp\www\Base_donnees_fred\afficher_client.php on line 22
et devant NOm bool(false)
merci
Re: erreur var_dump
Posté : 02 févr. 2011, 13:01
par 63renaud
je viens de supprimer ma mise en page et ja'i juste laissé les codes php et changé id_xguest par xguest_nom
voici ce que j'obtiens
Notice: Undefined index: xguest_nom in C:\wamp\www\Base_donnees_fred\afficher_client.php on line 14
array(42) { [0]=> string(2) "21" ["id_xguest"]=> string(2) "21" [1]=> string(0) "" ["xguest_nom"]=> string(0) "" [2]=> string(0) "" ["xguest_prenom"]=> string(0) "" [3]=> string(0) "" ["xguest_inscription"]=> string(0) "" [4]=> string(0) "" ["xguest_adresse"]=> string(0) "" [5]=> string(0) "" ["xguest_ville"]=> string(0) "" [6]=> string(1) "0" ["xguest_cp"]=> string(1) "0" [7]=> string(1) "0" ["xguest_tel"]=> string(1) "0" [8]=> string(1) "0" ["xguest_mobil"]=> string(1) "0" [9]=> string(0) "" ["xguest_email"]=> string(0) "" [10]=> string(0) "" ["xguest_site"]=> string(0) "" [11]=> string(0) "" ["xguest_stageN"]=> string(0) "" [12]=> string(0) "" ["xguest_stageV"]=> string(0) "" [13]=> string(0) "" ["xguest_stageNb"]=> string(0) "" [14]=> string(0) "" ["xguest_info1"]=> string(0) "" [15]=> string(0) "" ["xguest_info2"]=> string(0) "" [16]=> string(10) "0000-00-00" ["xguest_dateAppel"]=> string(10) "0000-00-00" [17]=> string(0) "" ["xguest_rap"]=> string(0) "" [18]=> string(0) "" ["xguest_rep"]=> string(0) "" [19]=> string(0) "" ["xguest_absc"]=> string(0) "" [20]=> string(0) "" ["xguest_fauxN"]=> string(0) "" }
Warning: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0
Re: erreur var_dump
Posté : 02 févr. 2011, 13:37
par moogli
ben xguest_ n'existe pas ligne 14 donc soit le formulaire est pas bon soit code l'est pas
@+
Re: erreur var_dump
Posté : 02 févr. 2011, 14:39
par 63renaud
oui j'ai eu la même réflexion, je recherche cette erreur .
merci très sincèrement
je te donnerai la réponse
merci
Re: erreur var_dump
Posté : 02 févr. 2011, 14:54
par 63renaud
j'ai trouvé l'erreur
dans ma page liste.php je faisais un lien vers une page affiche_détail.php avec un bouton.
mais j'avais mal déclaré le champs id. voilà pourquoi il ne le trouvait pas dans la page affiche_détail.php.
merci beaucoup pour ta patience et dis moi comment faire pour te remercier financièrement.
bonne journée