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 :

Export.csv des champs d'une liste avec menu déroulant ( via pdo)


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Par défaut Export.csv des champs d'une liste avec menu déroulant ( via pdo)
    Bonjour,

    Je cherche à faire un export .csv des champs situé dans une liste liée avec menu déroulant.
    J'ai déja créé le code html pour créer le bouton "export" dans mon "index.html" et j'aimerais utiliser la fonction php "fputcsv" dans mon "traitement.php".

    Comment feriez vous? Merci pour votre aide.

    Structure de mon code:

    Je dispose d'un fichier index.php qui récupère les champs d'une Base SQL via PDO->fetch et qui les affichent dans une liste avec menu déroulant.

    Et j'ai un deuxième fichier traitement.php qui récupère en $POST un champ permettant de faire une 2eme requête SQL et qui affiche les résultats dans une 2eme liste liée .

    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
     
    <html>
    	<head>
    		<title>COMPTES</title>
    		<script type='text/javascript'>
     
    			function getXhr(){
                                    var xhr = null; 
    				if(window.XMLHttpRequest) // Firefox et autres
    				   xhr = new XMLHttpRequest(); 
    				else if(window.ActiveXObject){ // Internet Explorer 
    				   try {
    			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
    			            } catch (e) {
    			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
    			            }
    				}
    				else { // XMLHttpRequest non supporté par le navigateur 
    				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    				   xhr = false; 
    				} 
                                    return xhr;
    			}
     
    /**
    			* Méthode qui sera appelée sur le click du bouton
    			*/
    			function go(){
    				var xhr = getXhr();
    				// On défini ce qu'on va faire quand on aura la réponse
    				xhr.onreadystatechange = function(){
    					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    					if(xhr.readyState == 4 && xhr.status == 200){
    						leselect = xhr.responseText;
                // On se sert de innerHTML pour rajouter les options a la liste
    						document.getElementById('apprenant').innerHTML = leselect;
    					}
    				}
     
     
    // Ici on va voir comment faire du post
    xhr.open("POST","include/traitement.php",true);
    				// ne pas oublier ça pour le post
    				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    				// ne pas oublier de poster les arguments
    				// ici, l'id de l'auteur
    				sel = document.getElementById('GROUPE');
    				idgroupe = sel.options[sel.selectedIndex].value;
    				xhr.send("CODE_GROUPE="+idgroupe);
    			}
    		</script>
    	</head>
     
     
     
        <body>
    		<form>
    			<fieldset style="width: 1100px">
     
    				<label>Groupe</label>
     
            <select name='GROUPE' id='GROUPE' onchange='go()'>
            <option value='-1'>Choisir un Groupe</option>
     
       <?php
            /* Fetch records and display in a loop */
     
            $pdo = new PDO("sqlsrv:Server=SRV-TEST\TEST_MSSQL,50000;Database=TESTDATA", "YP", "Pass");
     
            if( $pdo ) {
              echo "Connexion établie";
     
         }else{
              echo "La connexion n'a pu être établie.<br />";
              die( print_r( sqlsrv_errors(), true));
         }
     
     
     
     
        $sql1="select dbo.groupe.code_groupe AS CODE_GROUPE,dbo.groupe.nom_groupe AS GROUPE,dbo.calendrier.date_deb AS DEBUT,dbo.calendrier.date_fin AS FIN
        FROM dbo.GROUPE,dbo.FORMATION,dbo.CALENDRIER
        
        WHERE calendrier.DATE_DEB > '20180101'
        AND calendrier.code_calendrier = groupe.code_calendrier
        AND groupe.code_formation = formation.code_formation
        
        ORDER BY groupe.nom_groupe";
     
        $result1= $pdo->query($sql1);
     
       // echo $sql1;    
     
        while ($row=$result1->fetch() )
     
    {
     
     echo '<option value="'.($row['CODE_GROUPE']).'">'.$row['GROUPE']."$nbsp ----- du ".$row['DEBUT']."$nbsp au: ".$row['FIN'].'</option>';
     
    }
    ?>
     
    </select>
     
    <label>Apprenants</label>
    				<div id='apprenant' style='display:inline'>
    				<select name='apprenant'>
    					<option value='-1'>Liste des Apprenants</option>
    				</select>
    				</div>
     
    <div id='apprenant' style='display:inline'>
    <button onclick="Export()" >Export CSV </button>
    </div>
     
    <script>
            function Export()
            {
                var conf = confirm("Export users to CSV?");
                if(conf == true)
                {
                    window.open("include/traitement.php", '_blank');
                }
            }
        </script>
     
    			</fieldset>
    		</form>
    	</body>
    </html>
    et le fichier traitement.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
     
    <?php
    	echo "<select name='apprenant'>";
    	if(isset($_POST["CODE_GROUPE"])){
     
    		$pdo = new PDO("sqlsrv:Server=SRV-TEST\TEST_MSSQL,50000;Database=TESTDATA", "YP", "Pass"");
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
            $result2= $pdo->query("select a.NOM_APPRENANT AS NOM_APPRENANT,a.PRENOM_APPRENANT AS PRENOM_APPRENANT,nu.nom_net_utilisateur AS NETUSER
              FROM apprenant a
              inner join INSCRIPTION i on (a.CODE_APPRENANT = i.CODE_APPRENANT)
              inner join FREQUENTE f on (i.CODE_INSCRIPTION = f.CODE_INSCRIPTION)
              inner join GROUPE g on (f.CODE_GROUPE = g.CODE_GROUPE)
              inner join NET_UTILISATEUR nu on (a.code_apprenant = nu.code_ressource and nu.type_ressource = 7500)
              WHERE g.code_groupe=".$_POST["CODE_GROUPE"]."");
              
    
            while ($row=$result2->fetch() )
     
            {
      echo "<option value='".$row["CODE_APPRENANT"]."'>".$row["NOM_APPRENANT"]." ".$row["PRENOM_APPRENANT"]." ".$row["NETUSER"]."</option>";
    
        }
      
    	}
      echo "</select>";
    
    ?>
    Images attachées Images attachées  

Discussions similaires

  1. retirer des éléments d'une liste avec doublons
    Par tanguy.L dans le forum Prolog
    Réponses: 7
    Dernier message: 28/07/2010, 15h44
  2. [MySQL] nom des champs dans une liste dynamique
    Par jeinny dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 28/05/2009, 11h06
  3. Valeurs des champs dans une liste
    Par Sly2k dans le forum Access
    Réponses: 21
    Dernier message: 11/08/2006, 14h15
  4. Ajouter des champ dans une table avec une procedure sp
    Par Abdou1 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 26/07/2006, 18h32
  5. [langage] Comment rajouter des champs dans une liste
    Par toto_titi dans le forum Langage
    Réponses: 4
    Dernier message: 28/08/2003, 14h09

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