[ Résolu] erreur var_dump

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 : [ Résolu] erreur var_dump

Re: erreur var_dump

par 63renaud » 02 févr. 2011, 15:32

OK merci pour tous tes conseils
je vais les suivre.

merci très sincèrement

Re: erreur var_dump

par stealth35 » 02 févr. 2011, 15:25

essaye de faire du code plus claire :
<?php
require_once 'mysql_connect.php';

$sql = "SELECT * FROM `client` ORDER BY `xguest_nom` ASC";
$result = mysql_query($sql);

while($ligne = mysql_fetch_assoc($result)):
?>
<div>
    <p><strong>Nom</strong> : <?php echo $ligne['xguest_nom']; ?></p>
    <p><strong>Prénom</strong> : <?php echo $ligne['id']; ?></p>
    <p>
        <a href="afficher_client.php?<?php echo http_build_query(array('id_xguest' => $ligne['id_xguest'])); ?>">Détail</a>
        <a href="controle_client.php?<?php echo http_build_query(array('id_xguest' => $ligne['id_xguest'])); ?>">Modifier</a>
    </p>
</div>
<?php endwhile; ?>
<title>Afficher un Client</title>
<?php
    include_once'lien_css.php';
?>
<body>
    <div id="global">
<?php
require_once 'header.php';
require_once 'mysql_connect.php';

$detail = $_GET['id_xguest'];

$sql = sprintf("SELECT * FROM `client` WHERE `id_xguest`='%s'", mysql_real_escape_string($detail));
$result = mysql_query($sql);

$ligne = mysql_fetch_assoc($result);
?>
<div id="principal">
	<div id="label_haut">
		<div id="label_client">
			<label>CLIENT</label>
		</div>
 	</div>
	<div id="text_box">
		<p><label>Nom </label><strong><?php echo $ligne['xguest_nom'];?></strong></p>
		<p><label>Prénom </label><strong><?php echo $ligne['xguest_prenom'];?></strong></p>
	</div>
</div><!-- fin div principal -->
</div> <!-- fin div global-->
</body>
</html>
et je te conseil de valider ton HTML : http://validator.w3.org/

Re: erreur var_dump

par 63renaud » 02 févr. 2011, 15:06

j'ai trouvé l'erreur suite à une mauvaise déclaration de champs dans la page qui détient le bouton détail.
Maintenant cela fonctionne.
je te joint les deux pages
La page liste.php
<?php
require'mysql_connect.php';



// On récupère tout les  noms et prenoms de la table client

$result = mysql_query("SELECT * FROM client order by xguest_nom asc");

// On affiche chaque entrée une à une avec un bouton détail .
 while ($ligne = mysql_fetch_array($result) )
            {
            ?>
                
                    <strong>Nom</strong> : <?php echo $ligne['xguest_nom']; ?>
					<?php $lien="afficher_client.php?id_xguest=".$ligne['id_xguest'];?>
                        <a href='<?php echo $lien ?>'>	<input type='button' value='detail' name='détail'/></a>
                      <br />
                <strong>Pr&eacute;nom</strong> : <?php echo $ligne['id']; ?>
				<?php $lien="controle_client.php?id_xguest=".$ligne['id_xguest'];?>
                        <a href='<?php echo $lien ?>'>	<input type='button' value='modifier' name='modifier'/></a>
                <br/><br/>
              <?php
            }

mysql_close($c);         // Termine le traitement de la requête

?>
la page afficher_client.php

<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>&nbsp;&nbsp;&nbsp;<strong><?php echo $ligne['xguest_nom'];?></strong>
<br/><br/>
<label>Prénom</label>&nbsp;&nbsp;&nbsp;<strong><?php echo $ligne['xguest_prenom'];?></strong>


</div><!-- fin div texbox -->
</div><!-- fin div principal -->
</div> <!-- fin div global-->
</body>
</html>

Re: erreur var_dump

par stealth35 » 02 févr. 2011, 14:56

montre ton code complet

Re: erreur var_dump

par 63renaud » 02 févr. 2011, 14:54

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

Re: erreur var_dump

par 63renaud » 02 févr. 2011, 14:39

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

par moogli » 02 févr. 2011, 13:37

ben xguest_ n'existe pas ligne 14 donc soit le formulaire est pas bon soit code l'est pas ;)


@+

Re: erreur var_dump

par 63renaud » 02 févr. 2011, 13:01

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

par 63renaud » 02 févr. 2011, 12:56

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

par stealth35 » 02 févr. 2011, 12:48

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

par 63renaud » 02 févr. 2011, 12:37

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

par stealth35 » 02 févr. 2011, 12:32

ta bien mis les ini_set et error_reporting, ton rendu HTML donne quoi (affichage -> source)

Re: erreur var_dump

par 63renaud » 02 févr. 2011, 12:28

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

par stealth35 » 02 févr. 2011, 12:18

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

par 63renaud » 02 févr. 2011, 12:12

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