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

Langage PHP Discussion :

PHP + MySQL + Tableau + Formulaire


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 128
    Points : 44
    Points
    44
    Par défaut PHP + MySQL + Tableau + Formulaire
    Bonjour à tous, voilà pour un site d'entreprise j'ai une base de donnée composée d'un centaine de noms de clients.

    J'ai une page php contenant un formulaire <SELECT> afin d'afficher sur ma page l'ordre dans lequel sera affiché les résultats sous forme de tableau selon le choix fait par l'utilisateur.

    Par exemple dans mon <SELECT> on peut trier par id, nom, ville, code postal et date de relance.

    Pour l'instant j'y arrive, selon le choix de l'utilisateur j'affiche bien les données de ma BD sous forme de tableau, le problème c'est qu'il est HAUT ! normal puisque j'ai plus de 100 clients.

    Donc j'ai mis en place la pagination qui va couper mon tableau en tranche de 20.

    Mais voilà je n'arrive pas à faire cohabiter mon formulaire et ma pagination.

    Selon moi je dois juste changer la requête SQL selon le choix du <SELECT> mais rien n'y fait, lorsque je clique sur la page 2 ma requête n'est plus d'actualité.

    Donc je fais appel à vous, car j'ai essayé moult systèmes différents sans succès.

    Je vous laisse mon codage, sachant que le formulaire y est obsolète pour l'instant.

    Un pépito à celui qui trouve la solution

    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
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    <?php
    // On démarre la session 
    session_start ();  
    // On récupère nos variables de session  
    if (isset($_SESSION['utilisateur_db']) && isset($_SESSION['motdepasse_db'])
    		&& isset($_SESSION['host_db'])&& isset($_SESSION['nom_db'])) 
    { 
          echo '<html>'; 
          echo '<head>'; 
    			echo '<TITLE>Bienvenue sur le site avotservice-nord.fr</TITLE>'; 
    			echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >'; 
    			echo '<meta name="author" content="Cédric PELICIER">'; 
      			echo '<LINK rel="stylesheet" type="text/css" href="style/cours_html_css.css">'; 
      			echo '<LINK rel="stylesheet" type="text/css" href="style/sommaire_vertical.css">'; 
      		echo '</head>'; 
     
          echo '<body>';
     
    	echo '<div id="bandeau">';
    		echo '<h1><a href="http://www.avotservice-nord.fr/"><img src="images/logo_n.png" width="1200" height="200" alt="avotservice" border=no></a><br>';
    		echo '<a href="http://www.avotservice-nord.fr/">Prestations de services &agrave; la personne (aide &agrave; domicile) - R&eacute;gion - M&eacute;tropole de Lille - Armenti&egrave;res - ';
    		echo '<script type="text/javascript"> ';
    		echo '			d = new Date(); ';
    		echo '			 document.write(d.toLocaleDateString()); </script></a></h1><br><br>';
    	echo '</div>';
     
     
    	echo'<div id="menu">';
    	echo'<ul class="sommaire_vertical">';
    			echo'<LI><A href="sommaire.php">Rechercher</A></LI>';
    			echo'<LI><A href="ajouter_compte.php">Ajouter/Modifier/Supprimer Compte</A></LI>';
    			echo'<LI><A href="table_prospects_clients.php">Classer par Client/Prospect</A></LI>';
    			echo'<LI><A href="inscription_prospects.php">Appels & Devis</A></LI>';
    			echo'<LI><A href="analyse_donnees.php">Analyse des donn&eacute;es</A></LI>';
    			echo'<LI><A href="logout.php">Deconnexion</A></LI>';
    		echo'</ul>';
    	echo'</div>';
     
    	echo'<div id="contenu">';
     
    	// connection à la DB
    $link = mysql_connect("80.248.217.58","avots103889","travail1")or die ('Erreur :'.mysql_error());
    mysql_select_db("avots103889") or die ('Erreur :'.mysql_error());
     
     
     
    echo'<form id="monForm" method="POST" action="">';
        echo'<fieldset>';
            echo'<legend>Classer par... </legend>';
    		echo'<p>';
    			echo'<label for="form_tri">Trier par : </label>';
    			echo'<select for="form_tri" name="tri">';
    					echo'<OPTION value="identifiant">Identifiant</OPTION>';
    					echo'<OPTION value="nom">Nom</OPTION>';
    					echo'<OPTION value="cp">Code postal</OPTION>';
    					echo'<OPTION value="ville">Ville</OPTION>';
    					echo'<OPTION value="relancer_le">A relancer le</OPTION>';
    			echo'</select>';
    	    echo'</p>'; 
        echo'</fieldset>';
        echo'<p>';
            echo'<input type=submit value=Classer name="search">';
        echo'</p>';
    echo'</form>';
     
    $tri = $_POST['tri'];
     
    			/* Numero de page (1 par défaut) */
    			if( isset($_GET['page']) && is_numeric($_GET['page']) )
    			  $page = $_GET['page'];
    			else
    			  $page = 1;
     
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
    			$sql = "SELECT * FROM clients_tbl ORDER BY id LIMIT $limit_start, $pagination ";
     
    			/* Requête SQL */
    			$resultat = mysql_query($sql);	
     
    // si on a récupéré un résultat on l'affiche.
    if($resultat) {
        // debut du tableau
    	echo '<font color="#000000">';
        echo '<table BORDER="1" bgcolor="#FFFFFF" STYLE="color:#000000" class="noir">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
    		echo '<td bgcolor="#669999"><b><u>Id</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Pr&eacute;nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Rue</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Code Postal</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Ville</u></b></td>' ;
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. fixe</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. portable</u></b></td>';
        echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_assoc($resultat)) {
            echo '<tr>';
    		echo '<td bgcolor="#DDDDDD">'.$row["id"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["nom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["prenom"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["rue"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["cp"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["ville"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["fixe"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["port"].'</td>';
          echo '</tr>'."\n";
        }
        echo '</table>'."\n";
    	echo '</font><br>';
        // fin du tableau.
    }
    		/* Nb d'enregistrement total */
    		$nb_total = mysql_query('SELECT COUNT(*) AS nb_total FROM clients_tbl');
    		$nb_total = mysql_fetch_assoc($nb_total);
    		$nb_total = $nb_total['nb_total'];		
     
    		/* Pagination */
    		$nb_pages = ceil($nb_total / $pagination);
     
    		echo '<p>[ Page :';
    		/* Boucle sur les pages */
    		for ($i = 1 ; $i <= $nb_pages ; $i++) {
    		  if ($i == $page )
    			echo " $i";
    		  else
    			echo " <a href=\"?page=$i\">$i</a> ";
    		}
    		echo ' ]</p>';
     
    		if ($page > 1)
    		echo " <a href=\"?page=".($page-1)."\">Pr&eacute;c&eacute;dent</a> ";
    		else
    		echo "Pr&eacute;c&eacute;dent";
     
    		if ($page < $nb_pages)
    		echo " <a href=\"?page=".($page+1)."\">Suivant</a> ";
    		else
    		echo "Suivant";
     
     
    	echo'</div>';
     
    	echo '</body>'; 
       echo '</html>'; 
    }
    else
    { 
    		header ('location: connexion.html'); /*
    		echo 'Les variables ne sont pas déclarées.';  */
    } 
    ?>

  2. #2
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Bonsoir,
    Il faut intégrer ta variable "$tri" dans ta requete au niveau de "ORDER BY ..." comme ceci :
    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
    echo'<form id="monForm" method="POST" action="">';
        echo'<fieldset>';
            echo'<legend>Classer par... </legend>';
    		echo'<p>';
    			echo'<label for="form_tri">Trier par : </label>';
    			echo'<select for="form_tri" name="tri">';
    					echo'<OPTION value="identifiant">Identifiant</OPTION>';
    					echo'<OPTION value="nom">Nom</OPTION>';
    					echo'<OPTION value="cp">Code postal</OPTION>';
    					echo'<OPTION value="ville">Ville</OPTION>';
    					echo'<OPTION value="relancer_le">A relancer le</OPTION>';
    			echo'</select>';
    	    echo'</p>'; 
        echo'</fieldset>';
        echo'<p>';
            echo'<input type=submit value=Classer name="search">';
        echo'</p>';
    echo'</form>';
     
    			/* Numero de page (1 par défaut) */
    			if( isset($_GET['page']) && is_numeric($_GET['page']) )
    			  $page = $_GET['page'];
    			else
    			  $page = 1;
     
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
    			if(isset($_POST['tri'])){
    				$tri = $_POST['tri'] ;
    			} else {
    				$tri = "id" ;
    			}
     
    			$sql = "SELECT * FROM clients_tbl ORDER BY '".$tri."' LIMIT $limit_start, $pagination ";
     
    			/* Requête SQL */
    			$resultat = mysql_query($sql);

  3. #3
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 128
    Points : 44
    Points
    44
    Par défaut
    Yep,
    bon j'ai fais ce que tu m'as dit, mon tableau s'affiche bien et je peux changer de page sans problème mais il ne prend pas en compte mon <SELECT> donc il reste bloqué sur le classement par 'id' .

    Voici mon nouveau code :
    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
     
    // connection à la DB
    $link = mysql_connect("80.248.217.58","avots103889","travail1")or die ('Erreur :'.mysql_error());
    mysql_select_db("avots103889") or die ('Erreur :'.mysql_error());
     
     
     
    echo'<form id="monForm" method="POST" action="">';
        echo'<fieldset>';
            echo'<legend>Classer par... </legend>';
    		echo'<p>';
    			echo'<label for="form_tri">Trier par : </label>';
    			echo'<select for="form_tri" name="tri">';
    					echo'<OPTION value="identifiant" >Identifiant</OPTION>';
    					echo'<OPTION value="nom" >Nom</OPTION>';
    					echo'<OPTION value="cp" >Code postal</OPTION>';
    					echo'<OPTION value="ville">Ville</OPTION>';
    					echo'<OPTION value="relancer_le">A relancer le</OPTION>';
    			echo'</select>';
    	    echo'</p>'; 
        echo'</fieldset>';
        echo'<p>';
            echo'<input type=submit value=Classer name="search">';
        echo'</p>';
    echo'</form>';
     
    			/* Numero de page (1 par défaut) */
    			if( isset($_GET['page']) && is_numeric($_GET['page']) )
    			  $page = $_GET['page'];
    			else
    			  $page = 1;
     
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
    			if(isset($_POST['tri'])){
    				$tri = $_POST['tri'] ;
    			} else {
    				$tri = "id" ;
    			}
     
    			$sql = "SELECT * FROM clients_tbl ORDER BY '".$tri."' LIMIT $limit_start, $pagination ";
     
    			/* Requête SQL */
    			$resultat = mysql_query($sql);
     
    			/* Nb d'enregistrement total */
    			$nb_total = mysql_query('SELECT COUNT(*) AS nb_total FROM clients_tbl');
    			$nb_total = mysql_fetch_assoc($nb_total);
    			$nb_total = $nb_total['nb_total'];		
     
    			/* Pagination */
    			$nb_pages = ceil($nb_total / $pagination);
     
     
    // si on a récupéré un résultat on l'affiche.
    if($resultat) {
        // debut du tableau
    	echo '<font color="#000000">';
        echo '<table BORDER="1" bgcolor="#FFFFFF" STYLE="color:#000000" class="noir">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
    		echo '<td bgcolor="#669999"><b><u>Id</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Pr&eacute;nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Rue</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Code Postal</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Ville</u></b></td>' ;
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. fixe</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. portable</u></b></td>';
        echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_assoc($resultat)) {
            echo '<tr>';
    		echo '<td bgcolor="#DDDDDD">'.$row["id"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["nom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["prenom"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["rue"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["cp"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["ville"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["fixe"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["port"].'</td>';
          echo '</tr>'."\n";
        }
        echo '</table>'."\n";
    	echo '</font><br>';
        // fin du tableau.
    }
     
    		echo '<p>[ Page :';
    		/* Boucle sur les pages */
    		for ($i = 1 ; $i <= $nb_pages ; $i++) {
    		  if ($i == $page )
    			echo " $i";
    		  else
    			echo " <a href=\"?page=$i\">$i</a> ";
    		}
    		echo ' ]</p>';
     
    		if ($page > 1)
    		echo " <a href=\"?page=".($page-1)."\">Pr&eacute;c&eacute;dent</a> - ";
    		else
    		echo "Pr&eacute;c&eacute;dent - " ;
     
    		if ($page < $nb_pages)
    		echo " <a href=\"?page=".($page+1)."\">Suivant</a> ";
    		else
    		echo "Suivant";
    Je pensais qu'on devait mettre $_GET sur le transfert de variable dans un lien ( car j'ai vu que des gens affichaient bien la première page et perdaient leurs données une fois le lien cliqué sur la page suivante )

  4. #4
    FoxLeRenard
    Invité(e)
    Par défaut
    Bonjour,
    pleins de petits détails il faudra relire tes echo (j'ais corrigé)

    Pour le reste il y avait dualitée entre Oui ou non un GET et POST ou non ?
    J'ais remonté tout ça et la ça se lit tout seul
    s' il y a une session on charge LeTri
    s'il y a un POST on charge tri

    la régle est facile !!

    la faute syntaxe était là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo " <a href=\"?page=".$i."\">".$i."</a> ";
    pour le reste voici
    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
    116
     
    <?PHP
    session_start();
    if (!isset($_SESSION['LeTri'])) {$_SESSION['LeTri']="id";$LeTri="id";}
         else {$LeTri=$_SESSION['LeTri'];}
     
     
    // connection à la DB
    $link = mysql_connect("80.248.217.58","avots103889","travail1") or die ('Erreur :'.mysql_error());
    mysql_select_db("avots103889") or die ('Erreur :'.mysql_error());
     
    if(isset($_POST['tri'])){    $tri = $_POST['tri'] ;   }
    else {$tri = "id" ;}
    /* Numero de page (1 par défaut) */
    if( isset($_GET['page']) && is_numeric($_GET['page']) ) $page = $_GET['page'];
      else  $page = 1;
    /* ========prioritee a la session si pas de choix===============*/
    if ($tri == "id" ) $tri = $LeTri;
    if ($tri != "id" ) {$_SESSION['LeTri']=$tri;$LeTri=$tri;}
     
     
    echo'<form id="monForm" method="POST" action="">';
        echo'<fieldset>';
            echo'<legend>Classer par... </legend>';
    		echo'<p>';
    			echo'<label for="form_tri">Trier par : </label>';
    			echo'<select for="form_tri" name="tri">';
    					echo'<OPTION value="identifiant" >Identifiant</OPTION>';
    					echo'<OPTION value="nom" >Nom</OPTION>';
    					echo'<OPTION value="cp" >Code postal</OPTION>';
    					echo'<OPTION value="ville">Ville</OPTION>';
    					echo'<OPTION value="relancer_le">A relancer le</OPTION>';
    			echo'</select>';
    	    echo'</p>'; 
        echo'</fieldset>';
        echo'<p>';
            echo'<input type=submit value=Classer name="search">';
        echo'</p>';
    echo'</form>';
     
     
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
     
    			$sql = "SELECT * FROM clients_tbl ORDER BY '".$tri."' LIMIT $limit_start, $pagination ";
     
    			/* Requête SQL */
    			$resultat = mysql_query($sql);
     
    			/* Nb d'enregistrement total */
    			$nb_total = mysql_query('SELECT COUNT(*) AS nb_total FROM clients_tbl');
    			$nb_total = mysql_fetch_assoc($nb_total);
    			$nb_total = $nb_total['nb_total'];		
     
    			/* Pagination */
    			$nb_pages = ceil($nb_total / $pagination);
     
     
    // si on a récupéré un résultat on l'affiche.
    if($resultat) {
        // debut du tableau
    	echo '<font color="#000000">';
        echo '<table BORDER="1" bgcolor="#FFFFFF" STYLE="color:#000000" class="noir">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
    		echo '<td bgcolor="#669999"><b><u>Id</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Pr&eacute;nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Rue</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Code Postal</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Ville</u></b></td>' ;
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. fixe</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. portable</u></b></td>';
        echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_assoc($resultat)) {
            echo '<tr>';
    		echo '<td bgcolor="#DDDDDD">'.$row["id"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["nom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["prenom"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["rue"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["cp"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["ville"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["fixe"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["port"].'</td>';
          echo '</tr>'."\n";
        }
        echo '</table>'."\n";
    	echo '</font><br>';
        // fin du tableau.
    }
     
    		echo '<p>[ Page :';
    		/* Boucle sur les pages */
    		for ($i = 1 ; $i <= $nb_pages ; $i++) {
    		  if ($i == $page )
       echo "".$i."";
    		  else
       echo " <a href=\"?page=".$i."\">".$i."</a> ";
    		}
    		echo ' ]</p>';
     
    		if ($page > 1)
    		echo " <a href=\"?page=".($page-1)."\">Pr&eacute;c&eacute;dent</a> - ";
    		else
    		echo "Pr&eacute;c&eacute;dent - " ;
     
    		if ($page < $nb_pages)
    		echo " <a href=\"?page=".($page+1)."\">Suivant</a> ";
    		else
    		echo "Suivant";
    ?>

  5. #5
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 128
    Points : 44
    Points
    44
    Par défaut
    Pour le reste il y avait dualitée entre Oui ou non un GET et POST ou non ?
    J'ai pas compris la question :/

    J'ai mis ton code mais le problème reste le même, mon formulaire reste obsolète, pourtant lorsque je choisis "nom" par exemple dans la liste déroulante j'ai l'impression que les données se chargent bien mais rien ne change à l'écran. Je reste bloqué sur un classement par 'id'


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    session_start();
    if (!isset($_SESSION['LeTri'])) {$_SESSION['LeTri']="id";$LeTri="id";}
         else {$LeTri=$_SESSION['LeTri'];}
    J'ai déjà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // On démarre la session 
    session_start ();  
    // On récupère nos variables de session  
    if (isset($_SESSION['utilisateur_db']) && isset($_SESSION['motdepasse_db'])
    		&& isset($_SESSION['host_db'])&& isset($_SESSION['nom_db']))
    En haut de ma page car il faut être loggé pour y accéder, je ne pense pas que je dois remettre de session_start (); avant la connexion à la BD, une seul suffit il me semble.

    la faute syntaxe était là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo " <a href=\"?page=".$i."\">".$i."</a> ";
    Dois-je modifier cette partie ou alors les SESSION s'en occupent ?

    C'est bizarre qu'il ne prenne pas en compte mon formulaire...
    Je remets mon code entier :
    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
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    <?php
    // On démarre la session 
    session_start ();  
    // On récupère nos variables de session  
    if (isset($_SESSION['utilisateur_db']) && isset($_SESSION['motdepasse_db'])
    		&& isset($_SESSION['host_db'])&& isset($_SESSION['nom_db'])) 
    { 
          echo '<html>'; 
          echo '<head>'; 
    			echo '<TITLE>Bienvenue sur le site avotservice-nord.fr</TITLE>'; 
    			echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >'; 
    			echo '<meta name="author" content="Cédric PELICIER">'; 
      			echo '<LINK rel="stylesheet" type="text/css" href="style/cours_html_css.css">'; 
      			echo '<LINK rel="stylesheet" type="text/css" href="style/sommaire_vertical.css">'; 
      		echo '</head>'; 
     
          echo '<body>';
     
    	echo '<div id="bandeau">';
    		echo '<h1><a href="http://www.avotservice-nord.fr/"><img src="images/logo_n.png" width="1200" height="200" alt="avotservice" border=no></a><br>';
    		echo '<a href="http://www.avotservice-nord.fr/">Prestations de services &agrave; la personne (aide &agrave; domicile) - R&eacute;gion - M&eacute;tropole de Lille - Armenti&egrave;res - ';
    		echo '<script type="text/javascript"> ';
    		echo '			d = new Date(); ';
    		echo '			 document.write(d.toLocaleDateString()); </script></a></h1><br><br>';
    	echo '</div>';
     
     
    	echo'<div id="menu">';
    	echo'<ul class="sommaire_vertical">';
    			echo'<LI><A href="sommaire.php">Rechercher</A></LI>';
    			echo'<LI><A href="ajouter_compte.php">Ajouter/Modifier/Supprimer Compte</A></LI>';
    			echo'<LI><A href="table_prospects_clients.php">Classer par Client/Prospect</A></LI>';
    			echo'<LI><A href="inscription_prospects.php">Appels & Devis</A></LI>';
    			echo'<LI><A href="analyse_donnees.php">Analyse des donn&eacute;es</A></LI>';
    			echo'<LI><A href="logout.php">Deconnexion</A></LI>';
    		echo'</ul>';
    	echo'</div>';
     
    	echo'<div id="contenu">';
     
    if (!isset($_SESSION['LeTri'])) {$_SESSION['LeTri']="id";$LeTri="id";}
         else {$LeTri=$_SESSION['LeTri'];}
     
     
    // connection à la DB
    $link = mysql_connect("80.248.217.58","avots103889","travail1") or die ('Erreur :'.mysql_error());
    mysql_select_db("avots103889") or die ('Erreur :'.mysql_error());
     
    if(isset($_POST['tri'])){    $tri = $_POST['tri'] ;   }
    else {$tri = "id" ;}
     
    /* Numero de page (1 par défaut) */
    if( isset($_GET['page']) && is_numeric($_GET['page']) ) $page = $_GET['page'];
      else  $page = 1;
     
    /* ========prioritee a la session si pas de choix===============*/
    if ($tri == "id" ) $tri = $LeTri;
    if ($tri != "id" ) {$_SESSION['LeTri']=$tri;$LeTri=$tri;}
     
     
    echo'<form id="monForm" method="POST" action="">';
        echo'<fieldset>';
            echo'<legend>Classer par... </legend>';
    		echo'<p>';
    			echo'<label for="form_tri">Trier par : </label>';
    			echo'<select for="form_tri" name="tri">';
    					echo'<OPTION value="identifiant" >Identifiant</OPTION>';
    					echo'<OPTION value="nom" >Nom</OPTION>';
    					echo'<OPTION value="cp" >Code postal</OPTION>';
    					echo'<OPTION value="ville">Ville</OPTION>';
    					echo'<OPTION value="relancer_le">A relancer le</OPTION>';
    			echo'</select>';
    	    echo'</p>'; 
        echo'</fieldset>';
        echo'<p>';
            echo'<input type=submit value=Classer name="search">';
        echo'</p>';
    echo'</form>';
     
     
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
     
    			$sql = "SELECT * FROM clients_tbl ORDER BY '".$tri."' LIMIT $limit_start, $pagination ";
     
    			/* Requête SQL */
    			$resultat = mysql_query($sql);
     
    			/* Nb d'enregistrement total */
    			$nb_total = mysql_query('SELECT COUNT(*) AS nb_total FROM clients_tbl');
    			$nb_total = mysql_fetch_assoc($nb_total);
    			$nb_total = $nb_total['nb_total'];		
     
    			/* Pagination */
    			$nb_pages = ceil($nb_total / $pagination);
     
     
    // si on a récupéré un résultat on l'affiche.
    if($resultat) {
        // debut du tableau
    	echo '<font color="#000000">';
        echo '<table BORDER="1" bgcolor="#FFFFFF" STYLE="color:#000000" class="noir">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
    		echo '<td bgcolor="#669999"><b><u>Id</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Pr&eacute;nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Rue</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Code Postal</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Ville</u></b></td>' ;
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. fixe</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. portable</u></b></td>';
        echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_assoc($resultat)) {
            echo '<tr>';
    		echo '<td bgcolor="#DDDDDD">'.$row["id"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["nom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["prenom"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["rue"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["cp"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["ville"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["fixe"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["port"].'</td>';
          echo '</tr>'."\n";
        }
        echo '</table>'."\n";
    	echo '</font><br>';
        // fin du tableau.
    }
     
    		echo '<p>[ Page :';
    		/* Boucle sur les pages */
    		for ($i = 1 ; $i <= $nb_pages ; $i++) {
    		  if ($i == $page )
       echo "".$i."";
    		  else
       echo " <a href=\"?page=".$i."\">".$i."</a> ";
    		}
    		echo ' ]</p>';
     
    		if ($page > 1)
    		echo " <a href=\"?page=".($page-1)."\">Pr&eacute;c&eacute;dent</a> - ";
    		else
    		echo "Pr&eacute;c&eacute;dent - " ;
     
    		if ($page < $nb_pages)
    		echo " <a href=\"?page=".($page+1)."\">Suivant</a> ";
    		else
    		echo "Suivant";
     
     
    	echo'</div>';
     
    	echo '</body>'; 
       echo '</html>'; 
    }
    else
    { 
    		header ('location: connexion.html'); /*
    		echo 'Les variables ne sont pas déclarées.';  */
    } 
    ?>

  6. #6
    FoxLeRenard
    Invité(e)
    Par défaut
    Bonjour,

    Il est évident que ça ne va que si le PHP est exactement comme j'ais écris au moins en test !

    Je vais réanalyser ça, mais pourrais tu mettre ici (sans les MDPasse) le PHP complet ?

  7. #7
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 128
    Points : 44
    Points
    44
    Par défaut
    J'ai mis toute ma page PHP dans ma dernière réponse, mais si tu veux voir le résultat je peux te donner le log et mdp en MP.
    En tout cas toutes les opérations pour classer les résultats de la recherche ce font sur une même et unique page :

    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
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    <?php
    // On démarre la session 
    session_start ();  
    // On récupère nos variables de session  
    if (isset($_SESSION['utilisateur_db']) && isset($_SESSION['motdepasse_db'])
    		&& isset($_SESSION['host_db'])&& isset($_SESSION['nom_db'])) 
    { 
          echo '<html>'; 
          echo '<head>'; 
    			echo '<TITLE>Bienvenue sur le site avotservice-nord.fr</TITLE>'; 
    			echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >'; 
    			echo '<meta name="author" content="Cédric PELICIER">'; 
      			echo '<LINK rel="stylesheet" type="text/css" href="style/cours_html_css.css">'; 
      			echo '<LINK rel="stylesheet" type="text/css" href="style/sommaire_vertical.css">'; 
      		echo '</head>'; 
     
          echo '<body>';
     
    	echo '<div id="bandeau">';
    		echo '<h1><a href="http://www.avotservice-nord.fr/"><img src="images/logo_n.png" width="1200" height="200" alt="avotservice" border=no></a><br>';
    		echo '<a href="http://www.avotservice-nord.fr/">Prestations de services &agrave; la personne (aide &agrave; domicile) - R&eacute;gion - M&eacute;tropole de Lille - Armenti&egrave;res - ';
    		echo '<script type="text/javascript"> ';
    		echo '			d = new Date(); ';
    		echo '			 document.write(d.toLocaleDateString()); </script></a></h1><br><br>';
    	echo '</div>';
     
     
    	echo'<div id="menu">';
    	echo'<ul class="sommaire_vertical">';
    			echo'<LI><A href="sommaire.php">Rechercher</A></LI>';
    			echo'<LI><A href="ajouter_compte.php">Ajouter/Modifier/Supprimer Compte</A></LI>';
    			echo'<LI><A href="table_prospects_clients.php">Classer par Client/Prospect</A></LI>';
    			echo'<LI><A href="inscription_prospects.php">Appels & Devis</A></LI>';
    			echo'<LI><A href="analyse_donnees.php">Analyse des donn&eacute;es</A></LI>';
    			echo'<LI><A href="logout.php">Deconnexion</A></LI>';
    		echo'</ul>';
    	echo'</div>';
     
    	echo'<div id="contenu">';
     
    if (!isset($_SESSION['LeTri'])) {$_SESSION['LeTri']="id";$LeTri="id";}
         else {$LeTri=$_SESSION['LeTri'];}
     
     
    // connection à la DB
    $link = mysql_connect("80.248.217.58","avots103889","travail1") or die ('Erreur :'.mysql_error());
    mysql_select_db("avots103889") or die ('Erreur :'.mysql_error());
     
    if(isset($_POST['tri'])){    $tri = $_POST['tri'] ;   }
    else {$tri = "id" ;}
     
    /* Numero de page (1 par défaut) */
    if( isset($_GET['page']) && is_numeric($_GET['page']) ) $page = $_GET['page'];
      else  $page = 1;
     
    /* ========prioritee a la session si pas de choix===============*/
    if ($tri == "id" ) $tri = $LeTri;
    if ($tri != "id" ) {$_SESSION['LeTri']=$tri;$LeTri=$tri;}
     
     
    echo'<form id="monForm" method="POST" action="">';
        echo'<fieldset>';
            echo'<legend>Classer par... </legend>';
    		echo'<p>';
    			echo'<label for="form_tri">Trier par : </label>';
    			echo'<select for="form_tri" name="tri">';
    					echo'<OPTION value="identifiant" >Identifiant</OPTION>';
    					echo'<OPTION value="nom" >Nom</OPTION>';
    					echo'<OPTION value="cp" >Code postal</OPTION>';
    					echo'<OPTION value="ville">Ville</OPTION>';
    					echo'<OPTION value="relancer_le">A relancer le</OPTION>';
    			echo'</select>';
    	    echo'</p>'; 
        echo'</fieldset>';
        echo'<p>';
            echo'<input type=submit value=Classer name="search">';
        echo'</p>';
    echo'</form>';
     
     
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
     
    			$sql = "SELECT * FROM clients_tbl ORDER BY '".$tri."' LIMIT $limit_start, $pagination ";
     
    			/* Requête SQL */
    			$resultat = mysql_query($sql);
     
    			/* Nb d'enregistrement total */
    			$nb_total = mysql_query('SELECT COUNT(*) AS nb_total FROM clients_tbl');
    			$nb_total = mysql_fetch_assoc($nb_total);
    			$nb_total = $nb_total['nb_total'];		
     
    			/* Pagination */
    			$nb_pages = ceil($nb_total / $pagination);
     
     
    // si on a récupéré un résultat on l'affiche.
    if($resultat) {
        // debut du tableau
    	echo '<font color="#000000">';
        echo '<table BORDER="1" bgcolor="#FFFFFF" STYLE="color:#000000" class="noir">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
    		echo '<td bgcolor="#669999"><b><u>Id</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Pr&eacute;nom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Rue</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>Code Postal</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>Ville</u></b></td>' ;
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. fixe</u></b></td>';
    		echo '<td bgcolor="#669999"><b><u>T&eacute;l. portable</u></b></td>';
        echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_assoc($resultat)) {
            echo '<tr>';
    		echo '<td bgcolor="#DDDDDD">'.$row["id"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["nom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["prenom"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["rue"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["cp"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["ville"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["fixe"].'</td>';
    		echo '<td bgcolor="#DDDDDD">'.$row["port"].'</td>';
          echo '</tr>'."\n";
        }
        echo '</table>'."\n";
    	echo '</font><br>';
        // fin du tableau.
    }
     
    		echo '<p>[ Page :';
    		/* Boucle sur les pages */
    		for ($i = 1 ; $i <= $nb_pages ; $i++) {
    		  if ($i == $page )
       echo "".$i."";
    		  else
       echo " <a href=\"?page=".$i."\">".$i."</a> ";
    		}
    		echo ' ]</p>';
     
    		if ($page > 1)
    		echo " <a href=\"?page=".($page-1)."\">Pr&eacute;c&eacute;dent</a> - ";
    		else
    		echo "Pr&eacute;c&eacute;dent - " ;
     
    		if ($page < $nb_pages)
    		echo " <a href=\"?page=".($page+1)."\">Suivant</a> ";
    		else
    		echo "Suivant";
     
     
    	echo'</div>';
     
    	echo '</body>'; 
       echo '</html>'; 
    }
    else
    { 
    		header ('location: connexion.html'); /*
    		echo 'Les variables ne sont pas déclarées.';  */
    } 
    ?>
    Envois-moi un MP si tu veux voir ce que donne le résultat, j'avoue que sans voir c'est pas évident.

  8. #8
    FoxLeRenard
    Invité(e)
    Par défaut
    Il a fallu tout bouleverser car les POST GET et SESSION doivent étre traités
    en tête.

    De plus il y avait encore des problémes le plus gros était dans le select valeur id !

    Voila donc normalement prends tel quel. test et on verra ensuite.
    J'ais forcé partout index.php mais si il porte un autre nom remplace.
    Mais ne laisses pas vide c'est pas bon !
    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
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
     
     
    <?php
    // On démarre la session 
    session_start ();  
    // On récupère nos variables de session  
    if (!isset($_SESSION['utilisateur_db'])) {$_SESSION['utilisateur_db']="";$DBuserLeTri="";}
         else {$DBuser=$_SESSION['utilisateur_db'];}
    if (!isset($_SESSION['motdepasse_db'])) {$_SESSION['motdepasse_db']="";$DBmdp="";}
         else {$DBmdp=$_SESSION['motdepasse_db'];}
    if (!isset($_SESSION['host_db'])) {$_SESSION['host_db']="";$DBhost="";}
         else {DBhost=$_SESSION['host_db'];}
    if (!isset($_SESSION['nom_db'])) {$_SESSION['nom_db']="";$DBnom="";}
         else {$DBnom=$_SESSION['nom_db'];}
     
    if (!isset($_SESSION['LeTri'])) {$_SESSION['LeTri']="id";$LeTri="id";}
         else {$LeTri=$_SESSION['LeTri'];}
     
    if(isset($_POST['tri'])){    $tri = $_POST['tri'] ;   }
    else {$tri = "id" ;}
     
    /* Numero de page (1 par défaut) */
    if( isset($_GET['page']) && is_numeric($_GET['page']) ) $page = $_GET['page'];
      else  $page = 1;
    /* ========prioritee a la session si pas de choix===============*/
    if ($tri == "id" ) $tri = $LeTri;
    if ($tri != "id" ) {$_SESSION['LeTri']=$tri;$LeTri=$tri;}
     
    if ($DBuser=="" || $DBmdp=="" || $DBhost==""  || $DBnom=="")
    {
     header ('location: connexion.html');
     /*  echo 'Les variables ne sont pas déclarées.';  */
     exit;
    }
    ?>
    <html> 
    <head> 
    <TITLE>Bienvenue sur le site avotservice-nord.fr</TITLE> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" > 
    <meta name="author" content="Cédric PELICIER"> 
    <LINK rel="stylesheet" type="text/css" href="style/cours_html_css.css"> 
    <LINK rel="stylesheet" type="text/css" href="style/sommaire_vertical.css"> 
    </head> 
    <body>
     
    <div id="bandeau">
    <h1><a href="http://www.avotservice-nord.fr/"><img src="images/logo_n.png" width="1200" height="200" alt="avotservice" border=no></a><br />
    <a href="http://www.avotservice-nord.fr/">Prestations de services &agrave; la personne (aide &agrave; domicile) - R&eacute;gion - M&eacute;tropole de Lille - Armenti&egrave;res - 
    <script type="text/javascript"> 
    d = new Date(); 
    document.write(d.toLocaleDateString());
    </script>
    </a></h1><br /><br />
    </div>
     
    <div id="menu">
    <ul class="sommaire_vertical">
    <LI><A href="sommaire.php">Rechercher</A></LI>
    <LI><A href="ajouter_compte.php">Ajouter/Modifier/Supprimer Compte</A></LI>
    <LI><A href="table_prospects_clients.php">Classer par Client/Prospect</A></LI>
    <LI><A href="inscription_prospects.php">Appels & Devis</A></LI>
    <LI><A href="analyse_donnees.php">Analyse des donn&eacute;es</A></LI>
    <LI><A href="logout.php">Deconnexion</A></LI>
    </ul>
    </div>
     
    <div id="contenu">
    <form id="monForm" method="POST" action="index.php">
       <fieldset>
        <legend>Classer par... </legend>
        <p>
        <label for="form_tri">Trier par : </label>
        <select for="form_tri" name="tri">
          <OPTION value="id" >Identifiant</OPTION>
          <OPTION value="nom" >Nom</OPTION>
          <OPTION value="cp" >Code postal</OPTION>
          <OPTION value="ville">Ville</OPTION>
          <OPTION value="relancer_le">A relancer le</OPTION>
        </select>
        </p> 
        </fieldset>
        <p><input type=submit value=Classer name="search"></p>
    </form>
    <?PHP 
    			/* Nombre d'info par page */
    			$pagination = 15;
    			/* Numéro du 1er enregistrement à lire */
    			$limit_start = ($page - 1) * $pagination;
     
    			/* Préparation de la requête */
       // connection à la DB
       $link = mysql_connect("80.248.217.58","avots103889","travail1") or die ('Erreur :'.mysql_error());
       mysql_select_db("avots103889") or die ('Erreur :'.mysql_error());
     
     
     
    			/* Requête SQL */
     
    			/* Nb d'enregistrement total */
    			$nb_total = mysql_query('SELECT COUNT(*) AS nb_total FROM clients_tbl');
    			$nb_total = mysql_fetch_assoc($nb_total);
    			$nb_total = $nb_total['nb_total'];		
     
       $sql = "SELECT * FROM `clients_tbl` ORDER BY `".$tri."` ASC LIMIT $limit_start, $pagination ";
    			$resultat = mysql_query($sql);
     
     
     
    			/* Pagination */
    			$nb_pages = ceil($nb_total / $pagination);
     
     
     // si on a récupéré un résultat on l'affiche.
     if($resultat)
      {
        // debut du tableau
        echo '<font color="#000000">';
        echo '<table BORDER="1" bgcolor="#FFFFFF" STYLE="color:#000000" class="noir">'."\n";
        // première ligne on affiche les titres prénom et surnom dans 2 colonnes
        echo '<tr>';
        echo '<td bgcolor="#669999"><b><u>Id</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Nom</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Pr&eacute;nom</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Rue</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Code Postal</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>Ville</u></b></td>' ;
        echo '<td bgcolor="#669999"><b><u>T&eacute;l. fixe</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>T&eacute;l. portable</u></b></td>';
        echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_assoc($resultat))
          {
            echo '<tr>';
            echo '<td bgcolor="#DDDDDD">'.$row["id"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["nom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["prenom"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["rue"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["cp"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["ville"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["fixe"].'</td>';
            echo '<td bgcolor="#DDDDDD">'.$row["port"].'</td>';
            echo '</tr>'."\n";
           }
        echo '</table>'."\n";
        echo '</font><br />';
        // fin du tableau.
       }
     
    		echo '<p>[ Page :';
    		/* Boucle sur les pages */
      for ($i = 1 ; $i <= $nb_pages ; $i++)
       {
    		  if ($i == $page )   echo "".$i."";
        else    echo " <a href=\"index.php?page=".$i."\">".$i."</a> ";
       }
    		echo ' ]</p>';
     
    		if ($page > 1)
      echo " <a href=\"index.php?page=".($page-1)."\">Pr&eacute;c&eacute;dent</a> - ";
    		else
    		echo "Pr&eacute;c&eacute;dent - " ;
     
      if ($page < $nb_pages)  echo " <a href=\"index.php?page=".($page+1)."\">Suivant</a> ";
      else 		echo "Suivant";
    ?>
    </div>
    </body></html>

  9. #9
    FoxLeRenard
    Invité(e)
    Par défaut
    Whaou the MAOUS erreur !! ligne 10 manque "$"

    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
     
     
    <?php
    // On démarre la session 
    session_start ();  
    // On récupère nos variables de session  
    if (!isset($_SESSION['utilisateur_db'])) {$_SESSION['utilisateur_db']="";$DBuserLeTri="";}
         else {$DBuser=$_SESSION['utilisateur_db'];}
    if (!isset($_SESSION['motdepasse_db'])) {$_SESSION['motdepasse_db']="";$DBmdp="";}
         else {$DBmdp=$_SESSION['motdepasse_db'];}
    if (!isset($_SESSION['host_db'])) {$_SESSION['host_db']="";$DBhost="";}
         else {DBhost=$_SESSION['host_db'];}
    if (!isset($_SESSION['nom_db'])) {$_SESSION['nom_db']="";$DBnom="";}
         else {$DBnom=$_SESSION['nom_db'];}
     
    if (!isset($_SESSION['LeTri'])) {$_SESSION['LeTri']="id";$LeTri="id";}
         else {$LeTri=$_SESSION['LeTri'];}
    else {$DBhos

  10. #10
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par __sPiKe__ Voir le message
    J'ai mis toute ma page PHP dans ma dernière réponse, mais si tu veux voir le résultat je peux te donner le log et mdp en MP.
    Surtout sur action du FORM et tous les href=" remets le nom exact du PHP !!

    même si tu crois que c'est pas la peine !

  11. #11
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 128
    Points : 44
    Points
    44
    Par défaut
    Ok j'ai finis cette page n'hésite pas à voir le résultat et dis-moi ce que tu en pense

    Maintenant j'aimerai adapter le même principe sur la page 'sommaire' (Onglet "Rechercher") j'ai déjà commencé à changer mon code (tape sommaire1.php)
    mais c'est un peu différent car je sais pas si je dois mettre en place ton système pour chaque <INPUT> ou juste sur le résultat du <FORM> ..

    Je vais faire quelques tests.

Discussions similaires

  1. [PHP - MYSQL] Tableau formulaire + Back Office
    Par LuffyyffuL dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 17/04/2015, 16h55
  2. Php - MySql page formulaire bug requet
    Par Skin-Party dans le forum Requêtes
    Réponses: 5
    Dernier message: 13/11/2013, 09h13
  3. [MySQL] Tableau interactif PHP-MySQL et formulaire PHP
    Par clementdevelop dans le forum PHP & Base de données
    Réponses: 44
    Dernier message: 07/05/2013, 14h10
  4. [MySQL] Formulaire PHP ->MySQL
    Par shub dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 09/02/2010, 22h42
  5. [SGBD] [PHP/MySQL Query]Quelle est la taille du tableau retourné?
    Par Jean_Benoit dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 07/10/2005, 19h10

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