IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Récupération d'une variable passée par l'URL


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut Récupération d'une variable passée par l'URL
    Bonsoir,

    J'ai un petit problème pour récupérer ma variable en passant par plusieurs phases.
    Je m'explique,
    1 - j'ai un récapitualti des client avec un lien vers la page deux pour avoir le détail

    2 - Ma page deux grace a deux requete il me récupère les infos du client (Identifié grace à la variable passé dans l'url)

    3 - Même pricipe que la page deux sauf que la j'ai un message d'erreur concernant une variable non défini - Donc ici je dois avoir le détail des factures qui seront misent à jour lors des relances

    Ci-joint les codes de la page 2 et 3


    page : fiche_pdv_detail_fact.php

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <?php
    if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
    {
        echo '<title> '.$titre.' </title>';
    }
    else //Sinon, on écrit forum par défaut
    {
        echo '<title> Fiche societe </title>';
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
    </head>
     
    <body>
     
     
    <?php
     
    include('../includes/inc_conexion.php');
     
    $id= $_GET['numero'];
    echo "<br>";
    echo("$id");
    echo "<br>";
     
     
    $ligne = "<table BORDER=1 BORDERCOLOR=#CCCCCC BGCOLOR=#fffccc CELLSPACING=0 CELLPADDING=1 WIDTH=98% ALIGN=left font-family:Verdana size=10px>
    			<td bgcolor='#669999'><b><u>Numero</u></b></td>
    			<td bgcolor='#669999'><b><u>Facture</u></b></td>
    			<td bgcolor='#669999'><b><u>Libelle</u></b></td>		
    			<td bgcolor='#669999'><b><u>Montant</u></b></td>
    			<td bgcolor='#669999'><b><u>Date facture</u></b></td>
    			<td bgcolor='#669999'><b><u>Date echeance</u></b></td>
    			<td bgcolor='#669999'><b><u>Relance</u></b></td>
    			<td bgcolor='#669999'><b><u>L 01</u></b></td>
    			<td bgcolor='#669999'><b><u>L 02</u></b></td>
    			<td bgcolor='#669999'><b><u>L 03</u></b></td>
    			<td bgcolor='#669999'><b><u>L 04</u></b></td>
    			<td bgcolor='#669999'><b><u>Annee</u></b></td>";
     
     
     
     
    if(isset($_GET["numero"]))
     
     {
    $req = "SELECT * FROM facture WHERE id_numero = ".$id." ORDER BY facture";
    }
    else 
    {
    $req = "SELECT * FROM facture WHERE id_numero = ".$id." ORDER BY facture";
    }
     
    // Envoi de la requête et récupération des résultats
    $res=mysql_query($req)or die(mysql_error()."\n".$req);
     
    $total = 0;	
    $mont = 0;
     
     
    if(mysql_query($req))
    	{
    	while($dus = mysql_fetch_array($res))
    		{
    		$id = $dus['id_numero'];
     
    		$facture = $dus['facture'];
    		$intitule = $dus['intitule'];
    		$montant = $dus['montant'];
    		$date_fact = $dus['date_fact'];
    		$date_echeance = $dus['date_echeance'];
    		$relance = $dus['relance'];
    		$l_01 = $dus['l_01'];
    		$l_03 = $dus['l_02'];
    		$l_02 = $dus['l_03'];
    		$l_04 = $dus['l_04'];				
    		$annee = $dus['annee'];
     
     
    				$mont = addslashes($dus['montant']);
     
    					$total += $mont;
     
    		{
     
    			$ligne .= "<tr>
    						<td><a href='../includes/relance_02.php?numero=$id' target='_self'>".$id."</a></td>
    						<td>".$facture."</td>
    						<td>".$intitule."</td>
    						<td align='right'>".$montant."</td>
    						<td align='center'>".$date_fact."</td>
    						<td align='center'>".$date_echeance."</td>
    						<td align='center'>".$relance."</td>
    						<td align='center'>".$l_01."</td>
    						<td align='center'>".$l_02."</td>
    						<td align='center'>".$l_03."</td>
    						<td align='center'>".$l_04."</td>						
    						<td align='center'>".$annee."</td></tr>"; 
    			}
    		}
     
     
    $ligne .= "<tr><td colspan='3'>Total des dus du client N° $id </td><td align='right'>".$total."</td>";		
    echo $ligne;
     
    }
    mysql_free_result($res);
     
    ?>
    </body>
    </html>
    Détail de la page 3

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    <!DOCTYPE html PUBLIC "-//W3C//Dlabel XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/Dlabel/xhtml1-strict.dlabel">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <?php
    if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
    {
        echo '<title> '.$titre.' </title>';
    }
    else //Sinon, on écrit forum par défaut
    {
        echo '<title> Fiche societe </title>';
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
    </head>
     
    <body>
    <h1><center> Liste des factures par client a relancer</center></h1>
     
    <a href="../dus/dus_region.php">Retour au dus de la région v2</a></br>
     
    <form method="POST" action="relance_02.php">
     
    <?php
     
    include('../includes/inc_conexion.php');
     
     
    $id = $_GET['numero'];
    echo "<br>";
    echo("$id");
    echo "<br>";
     
    $reponse = mysql_query("SELECT * FROM facture WHERE id_numero='.$id.' ORDER BY facture"); 
     
     
    while ($donnees = mysql_fetch_array($reponse) )
    { 
    ?>
     
    <form>
     
    	 <label><br> Facture : <input type="hidden" value="<?php echo $donnees['facture']; ?>"></label>
    	  "<?php echo $donnees['facture']; ?>"
          <label>Relance : <input type="text" name="<?php echo $donnees['relance']; ?>" value="<?php echo $donnees['relance']; ?>" size="6"></label>
    	  <label>Relance N°1 : <input type="text" name="<?php echo $donnees['l_01']; ?>" value="<?php echo $donnees['l_01']; ?>" size="6"></label>
    	  <label>Relance N°2 : <input type="text" name="<?php echo $donnees['l_02']; ?>" value="<?php echo $donnees['l_02']; ?>" size="6"></label>
    	  <label>Relance N°3 : <input type="text" name="<?php echo $donnees['l_03']; ?>" value="<?php echo $donnees['l_03']; ?>" size="6"></label>
    	  <label>Relance N°4 : <input type="text" name="<?php echo $donnees['l_04']; ?>" value="<?php echo $donnees['l_04']; ?>" size="6"></label>	
    <?php
    }
    ?>
    <input type="submit" name="Modifier" value="Modifier">
     
    </form>
    Dans ma page 3, j'ai fait un écho de $id, il récupère bien la valeur de l'url mais voila pas plus d'info, si j'enlève la condition dans ma requête cela m'affiche toutes les élément de ma table facture.

    Je vous remerci de votre aide.

    J'ai shématiser ce que je voulais faire dans la pièce jointe

    Runcafre91

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu as un problème de concatenation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reponse = mysql_query("SELECT * FROM facture WHERE id_numero='$id' ORDER BY facture");
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Tu as un problème de concatenation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reponse = mysql_query("SELECT * FROM facture WHERE id_numero='$id' ORDER BY facture");
    Bonsoir,

    Merci de votre aide, j'avais quasiment pas fait gaffe a cette concatenation car j'étais sur un autre problème.

    Donc voila lorsque j'envoie les modications à ma base j'ai les erreur suivant (voir capture écran - code des pages dans mon post précedent)

    Je pense que cela dois etre un problème de stockage de variable dans la page fiche_pdv_detail_fact.php mais la variable est récupérer a partir de l'url.

    Faut-il que je créé une nouvelle variable afin de le stocker ou alors existe t'il une autre solution

    Je vous remercie de l'aide que vous pourriez m'apporter

    Runcafre91

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu es sur que dans ta page3 le echo $id affiche quelque chose ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Tu es sur que dans ta page3 le echo $id affiche quelque chose ?

    Bonjour,

    Merci de votre réponse, sur ma page 3, j'ai fait un écho qui affiche correctement le numero qui apparait dans l'Url avec le code suivant placé juste avant ma requête;

    $id = $_GET['numero'];
    echo '$id';

    Merci de votre aide.

    Pour l'instant je suis au taf je posterais si nécessaire le code de mes pages si besoin.

    Runcafre91

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ta page 3 c'est bien relance_02.php ?
    Est-ce que tu saurais dire pourquoi sur ton image de relance_02.php on voit des erreurs sur le fichier fiche_pdv_detail_fact.php ? il y a une inclusion de l'un dans l'autre ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Ta page 3 c'est bien relance_02.php ?
    Est-ce que tu saurais dire pourquoi sur ton image de relance_02.php on voit des erreurs sur le fichier fiche_pdv_detail_fact.php ? il y a une inclusion de l'un dans l'autre ?
    re,

    En effet il y a bien une inclusion du fichier

    - fiche_pdv_detail_fact.php

    Dans le fichier suivant

    - relance_02.php

    Sur le second image il y a une inclusion de deux fichier dans la page (fiche_pdv.php)
    fichier 1 : fiche_pdv_detail_societe.php

    fichier 2 : fiche_pdv_detail_fact.php

    Sur ces deux fichier j'ai pu récupéré le numéro via l'url

    L'ors de la mise à jour validation de mon formulaire j'ai l'érreur du post précédent "numero idefini"

    Je pense que le numéro s'est réinitialisé

    Merci de votre aide

Discussions similaires

  1. Encodage de caractère dans une variable passée par POST
    Par DavidAnd dans le forum ASP.NET MVC
    Réponses: 2
    Dernier message: 18/02/2011, 10h42
  2. Récupérer une variable passée par URL sans $_GET
    Par azou_gold dans le forum Langage
    Réponses: 3
    Dernier message: 16/09/2008, 12h09
  3. [Tableaux] Utiliser une variable passée par URL
    Par dahu17 dans le forum Langage
    Réponses: 2
    Dernier message: 09/02/2008, 16h57
  4. Recupérer un variable passé par l'URL
    Par mael94420 dans le forum Coldfusion
    Réponses: 5
    Dernier message: 17/07/2007, 17h03
  5. [SQL] Comment utiliser dans une requête une variable passée par URL
    Par foffa dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/08/2006, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo