Signaler

Afficher le nom des colonnes d'une table via une requete SQL [Résolu]

Posez votre question Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - Dernière réponse le 5 juil. 2017 à 10:21 par Ndediop
Bonjour,

Je souhaiterais savoir est ce qu'avec show columns j'aurai la possibilité d'afficher seulement le nom des colonnes d'une table dans des balises select HTML et je souhaite avoir un coup de pouce sur la requête svp car j'ai déjà essayé mais rien ne s'affiche.

 $requete="SHOW COLUMNS  FROM ma_table";

Merci d'avance!

Cordialement,

Afficher la suite 
Utile
+0
plus moins
Bonjour,

Même remarque que d'habitude ....
Montre ce que tu as essayé et qui ne "marche pas" ... et nous verrons pour te le corriger;
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 16 juin 2017 à 11:17
Voila:

<div id="colonne">
	 <select  name="colonne" id="colonne">
			                        <option value="">** Sélectionner... **</option>;
			                          $requete="SHOW columns FROM ma_table";
									   $resultats= $bdd_connection->query($requete); 
									  while($ligne = $resultats->fetch()){
										echo'<option value="'.$ligne[0].'">'.$ligne[0].'</option>';
									}	
                                echo'
	                               </select>
</div>
Répondre
Donnez votre avis
Utile
+0
plus moins
Bonjour,

Pour ce genre de requête qui touche au fonctionnement propre du SGBD, il est indispensable de savoir lequel tu utilises. Chaque SGBD aura un comportement différent.

Xavier
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 16 juin 2017 à 11:26
J'utilise mysql comme SGBD sur wamp.
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 19 juin 2017 à 11:29
Bonjour,

J'ai mis le bd_name.table_name afin de voir ce que ça donne mais ça reviens au même ya pas de changement du coups voila le code avec la requête:

<div id="champsoper">
  <select  name="champsoper" id="champsoper">
  <option value="">** Sélectionner... **</option>
   $requete="SHOW COLUMNS FROM bde.operations";
            $resultats= $bdd_connection->query($requete); 
           while($ligne = $resultats->fetch()){
          echo'<option value=""></option>';
         } 
                                echo'</select>
</div></div>
Répondre
Donnez votre avis
Utile
+0
plus moins
Bonjour

La requête n'est pas mauvaise, mais il y a d'autres problèmes :
- il manque la balise <?php avant le $requete - je suppose que le manque d'apostrophe et de ?> à la fin de la partie PHP viennent d'un mauvais découpage.
- il y a deux éléments avec le même id (même si ça n'empêche pas la requête de de marcher)
- dans la dernière version que tu montres, il n'y a plus de $ligne[0] dans les <option>, c'est bien dommage
- enfin, si comme moi tu as choisi l'option FETCH_ASSOC dans la connexion à ta base de données, le $ligne[0] ne va pas marcher, il va falloir utiliser $ligne['Field']

Ceci corrigé, ça marche.
le père. 5967Messages postés mardi 15 mai 2012Date d'inscription 4 août 2017 Dernière intervention - 19 juin 2017 à 15:27
C'était juste pour dire qu'il faut bien qu'on signale toutes les erreurs, on ne peut pas deviner celles qu'il y avait vraiment au départ et celles que tu as ajoutées.
Sinon, pour le $ligne[0], utilises-tu des options particulières lors de la connexion ? Si ce n'est pas le cas, le $ligne['Field'] ne donnera rien de plus.
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 19 juin 2017 à 16:02
D'accords je vois mais j'ai posté le code vous pouvez regarder.
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention Ndediop - 19 juin 2017 à 15:36
voila le code pour une rangée de ma table car elles sont toutes identiques pour que vous puissiez voir ce que je fais et me donnez un coups de pouce.

<!DOCTYPE html>
<html>
<body>
<?php
session_start();
?>

<?php
require('../../bdconnect.php');
?>
</td></tr></table></td></tr></table></td></tr></table></td></tr></table></div></td>
                </tr>
                <tr>
                  <td><div id="champs" objImgPliage="ctrl_59423ad0b488b0-47625125_549" objBlocPliage="ctrl_59423ad0b488b0-47625125_550"><table width="100%" border="0" cellpadding="0" cellspacing="0" class="styleCadreBloc1">
  			  <tr><td><table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr style="background-color: #FF8C00;">
              <td class="styleTitreBloc2">Champs du tableau</td></tr></table></td></tr><tr id="ctrl_59423ad0b488b0-47625125_550" style="background-color: #FFFFFF;"><td class="styleCorpsBloc"><table width="100%" border="0" cellspacing="0" cellpadding="0" onDblClick=""><tr><td><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="100%" valign="top"><table width="100%" border="0" cellspacing="3" cellpadding="0"><tr><td class="styleFicheIntitule"><div>Champs 1 :</div></td><td nowrap valign="top">
<!-- CTRL "Liste Table" : lstGroupeChamps[1] -->
<div id="lstGroupeChamps[1]" ident="_objListeItem" nomObjet="lstGroupeChamps[1]" class="styleListeExt" style="width: 120px" classItem="styleItemListe" verrou="0" nomDivErr="ctrl_59423ad0b488b0-47625125_144" nomCtrlValeur="ctrl_59423ad0b488b0-47625125_145" valeurNull="-1" texteNull="...">
<div>
<div>
	<select id="tableoper" name="tableoper" class="form-control">
		<option value="">...</option>
		<option value="01-operations">operations</option>
		<option value="02-operations">operations</option>
		<option value="03-operations">operations</option>
		<option value="04-operations">operations</option>
		<option value="05-operations">operations</option>
		<option value="06-operations">operations</option>
		<option value="07-operations">operations</option>
		<option value="08-operations">operations</option>
	</select>
</div></div>
</td></tr></table></td>
        </tr>
      </table></td>
  </tr>
</table>
<script language="javascript" type="text/javascript">startJava();</script>
</body>
</html>

Répondre
le père. 5967Messages postés mardi 15 mai 2012Date d'inscription 4 août 2017 Dernière intervention - 19 juin 2017 à 15:48
Attention, on est en train de changer de sujet.
On était en train d'essayer de résoudre un problème sur une requête précise, et on va le résoudre avant de passer à autre chose.Et pour ça il faut que tu répondes à la question que je t'ai posée, à savoir si tu utilises des options particulières lors de la connexion à la base de données.
(au passage je n'ai pas pu m'empêcher de voir un session_start après le <!DOCTYPE>, ça commence très mal)
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 19 juin 2017 à 16:06
c'est une erreur pour la session start, dans bddconnect j'ai les coordonnées de connection à ma base de données.
Répondre
Donnez votre avis
Utile
+0
plus moins
Bonjour,

Donc voici :

1 - Active la gestion des erreurs dans la connexion à ta bdd
en pdo : comme ceci http://www.commentcamarche.net/faq/46512-pdo-gerer-les-erreurs
<?php
try{
$bdd = new PDO ('mysql:host=localhost;dbname=bde;charset=utf8', 'root', '');
// Activation des erreurs PDO
 $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
 $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
} catch(PDOException $e) {
    die('Erreur : ' . $e->getMessage());
}
?>


2 - Active l'affichage des erreurs PHP en ajoutant au début de tes fichiers php les lignes suivantes
error_reporting(E_ALL);
ini_set('display-errors','on');


3 - En général .. on place le maximum de code php AVANT le code html !


4 - Voici un exemple qui fonctionne parfaitement :
<?php
//-------------------------------------//
// Affichage des erreurs PHP
//-------------------------------------//
error_reporting(E_ALL);
ini_set('display-errors','on');

//-------------------------------------//
//démarrage session
//-------------------------------------//
session_start();

//-------------------------------------//
//connexion à la bdd
//-------------------------------------//
require_once 'bddconnect.php';


//-------------------------------------//
//liste des champs de la table
//-------------------------------------//

$sql = "SHOW COLUMNS FROM bde.operations";
 
//Execution de la requete
try{
  $requete = $bdd -> prepare($sql) ;
  $requete->execute();
  $liste_champs = $requete->fetchAll(); //on stocke le resultat dans un array
}catch(Exception $e){
  // en cas d'erreur :
   echo " Erreur ! ".$e->getMessage();
   echo " Les datas : " ;
  print_r($datas);
}

?>

<!DOCTYPE html>
<html>
<body>

<div id="champsoper">
  <select  name="champsoper" id="champsoper">
    <option value="">** Sélectionnez.**</option>

    <?php
     //-------------------------------------//
     // Boucle sur l'array si pas vide
     //-------------------------------------//
      if(!empty($liste_champs)){
        foreach($liste_champs as $champ){
         $field = $champ['Field'];
         $Type = $champ['Type'];
         echo "<option value='$field'>$field ($Type) </option>";
        }
      }     
     ?>
  </select>
</div>
</body>
</html>

jordane45 18035Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 11 août 2017 Dernière intervention - 22 juin 2017 à 15:45
Heu... c'est du simple php ...
Il suffit de modifier la ligne
echo "<option value='$field'>$field ($Type) </option>";

Tu devrais trouver tout seul je pense.....
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 22 juin 2017 à 15:55
D'accords merci j'ai enlevé le $type car j'affichais pas les lignes comme ça, suis pas pro aussi dans ce domaine lol.
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention jordane45 - 5 juil. 2017 à 10:07
Bonjour,

Je souhaiterais avoir un coup de pouce sur le code java script, sur le tableau je dois gérer l'affichage d'une table opération en insérant les champs ou les supprimer c'est le tbleau que que tu m'a aidé pour les colonnes de la table, mais c'est le js qui pose problème, je vous envoie le code js que j'avais commencé car j'ai copié le code php mais ça ne il me dit que le message est long.

Merci d'avance!
Cordialement,

var tabLstIdent = new Array();

var tabNomLstCoulLig = new Array("lstEtatOpeCoulLig", "lstEtatTransCoulLig", "lstEtatEtudeCoulLig");
var tabNomLstCoulTxt = new Array("lstEtatOpeCoulTxt", "lstEtatTransCoulTxt", "lstEtatEtudeCoulTxt");


//=================================================================================
//					Valide les Valeurs du Format Tableau
//=================================================================================
function valider(){
	  				  
//*************** Compte le Nombre de Champs Selectionné ***************
	var nbChamps = ctrlLecture("nbChamps");
    var nbChampsSel = 0;
    var nomLstErr   = "";
	for(var i=1; i<=nbChamps; i++){
        if(ctrlLecture("lstChampsTabAff["+i+"]") != -1){
            nbChampsSel = nbChampsSel + 1;
        }else{
            if(nomLstErr == ""){
                if(ctrlLecture("lstGroupeChamps["+i+"]") == -1){
                    nomLstErr = "lstGroupeChamps["+i+"]";
                }else{
                    nomLstErr = "lstChampsTabAff["+i+"]";
                }
            }
        }
	}
    
//*************** Vérification des Valeurs Saisie ou Selectionnées ***************     
    var tabVerif = new Array();
    tabVerif.push(Array(null, "txtNom", "nbCar", "<", 3, "Saisie d'un nom d'aux moins trois caractères obligatoire"));
    if(nbChampsSel < 3){
        tabVerif.push(Array(null, nomLstErr, "erreur", null, null, "Sélection d'au moins trois champs obligatoire"));
    }
    var retourVerif = frmVerifValeur("objForm", tabVerif);
    
//*************** Affiche Message Erreur Saisie ***************
    if(retourVerif !== true){
        messageErrSaisie(retourVerif);
        return;
    }  
    
//*************** Valide la saisie ***************   
    ouvrirPage("prog_maj_format_tableau", 1, -1);    
    
}
//=================================================================================
//					Suppression du Format Tableau
//=================================================================================
function supprimer(){

//*************** Paramètre l'Action de Suppression ***************
    ctrlInitValeur("numAction", 1);
    ctrlInitValeur("lstIdAction", ctrlLecture("idFormat"));

//*************** Execute l'Action de Suppression ***************
    ouvrirPage("prog_act_format_tableau", 1, 1);

}
//=================================================================================
//					Retour à la page précedente
//=================================================================================
function annuler(){

    switch(ctrlLecture("retourForm")){
    case "0": ouvrirPage("prog_tableau", 0, iIf(frmModifier("objForm") == true, 0, -1)); break;
    case "1": ouvrirPage("prog_tab_format_tableau", 0, iIf(frmModifier("objForm") == true, 0, -1)); break;}

}
//=================================================================================
//					Mise à Jour du bloc "Format Tableau"
//=================================================================================
function majFormat(init){
				
//*************** Initialise les Liste de Configuration du Surlignage ***************	
    if(init == true){
        ctrlInitValeur("lstCoulLigSurligne", ctrlLecture("surligneLigne"));
        ctrlInitValeur("lstCoulTxtSurligne", ctrlLecture("surligneTexte"));
    }
        
//*************** Marque le Bloc "Modifié" ***************    
    if(init == false){ctrlInitValeur("majFormat", 1);}    
    
}

//=================================================================================
//					Insertion d'une Liste Champs
//=================================================================================
function insertChampsTab(index){
    
//*************** Nombre de Champs ***************
	var nbChamps = ctrlLecture("nbChamps");

//*************** Décale les selections vers le Bas ***************
	for(var i=nbChamps; i>index; i--){
        ctrlInitValeur("lstGroupeChamps["+i+"]", ctrlLecture("lstGroupeChamps["+(i - 1)+"]"));
		initLstChamps(ctrlLecture("lstGroupeChamps["+i+"]"), i);
        ctrlInitValeur("lstChampsTabAff["+i+"]", ctrlLecture("lstChampsTabAff["+(i - 1)+"]"));
        ctrlInitValeur("lstChampsTabTrie["+i+"]", ctrlLecture("lstChampsTabTrie["+(i - 1)+"]"));
	}
	ctrlInitValeur("lstGroupeChamps["+i+"]", -1);
	ctrlInitValeur("lstChampsTabAff["+i+"]", -1);
	ctrlInitValeur("lstChampsTabTrie["+i+"]", -1);

//*************** Mise à Jour des Listes et Bouton ***************
    majAffChamps(false);
        
}
//=================================================================================
//					Suppression d'une Liste Champs
//=================================================================================
function supprChampsTab(index){

//*************** Nombre de Champs ***************
	var nbChamps = ctrlLecture("nbChamps");

//*************** Décale les selection vers le Haut ***************
	for(var i=index; i<=nbChamps; i++){
		if(i < nbChamps){
			ctrlInitValeur("lstGroupeChamps["+i+"]", ctrlLecture("lstGroupeChamps["+(i + 1)+"]"));
			ctrlInitValeur("lstGroupeChamps["+(i + 1)+"]", -1);
			initLstChamps(ctrlLecture("lstGroupeChamps["+i+"]"), i);
			ctrlInitValeur("lstChampsTabAff["+i+"]", ctrlLecture("lstChampsTabAff["+(i + 1)+"]"));
			ctrlInitValeur("lstChampsTabAff["+(i + 1)+"]", -1);
			ctrlInitValeur("lstChampsTabTrie["+i+"]", ctrlLecture("lstChampsTabTrie["+(i + 1)+"]"));
			ctrlInitValeur("lstChampsTabTrie["+(i + 1)+"]", -1);
		}else{
			ctrlInitValeur("lstGroupeChamps["+i+"]", -1);
			ctrlInitValeur("lstChampsTabAff["+i+"]", -1);
			ctrlInitValeur("lstChampsTabTrie["+i+"]", -1);
		}
	}
        
//*************** Mise à Jour des Listes et Bouton ***************
    majAffChamps(false);
    
}
//=================================================================================
//					Mise à Jour du bloc "Format Tableau"
//=================================================================================
function majAffChamps(init){
    
//*************** Nombre de Champs ***************
	var nbChamps = ctrlLecture("nbChamps");
 
//*************** Initialise les Listes Groupe, Champs et Trie ***************
    if(init == true){
		if(ctrlLecture("lstChampsSel") != ""){
			var tabChampsSel = ctrlLecture("lstChampsSel").split(",");
			for(var i=1; i<=nbChamps; i++){
				var j = (i - 1) * 3;
				if(j < tabChampsSel.length){
					initLstChamps(tabChampsSel[j], i);
					ctrlInitValeur("lstGroupeChamps["+i+"]", tabChampsSel[j]);
					ctrlInitValeur("lstChampsTabAff["+i+"]", tabChampsSel[j + 1]);
					ctrlInitValeur("lstChampsTabTrie["+i+"]", tabChampsSel[j + 2]);
				}
			}
		}
		
//*************** Si Selection d'une Liste des Groupes de Champs ***************
    }else{
        var lstSel = frmCtrlEvent("objForm");
        if(lstSel != ""){
            if(lstSel.indexOf("lstGroupeChamps") == 0){
                var p1    = lstSel.indexOf("[") + 1;
                var p2    = lstSel.indexOf("]");
                var index = lstSel.substring(p1, p2); 
                       
//*************** Initialise la Liste des Champs ***************
                initLstChamps(ctrlLecture(lstSel), index);
           }
      
//*************** Vérifie si Doublon de Selection ***************
			if(lstSel.indexOf("lstChampsTabAff") == 0){
				for(var i=1; i<=nbChamps; i++){
					var nomLst = "lstChampsTabAff["+i+"]";
					if(nomLst != lstSel){
						if(ctrlLecture(nomLst) == ctrlLecture(lstSel)){
							ctrlSelIndex(nomLst, 0);
						}
					}
				}
			}
        }
    }
    
//*************** Etat des Listes et Boutons ***************    
    for(var i=1; i<=nbChamps; i++){
        ctrlEtat("lstChampsTabAff["+i+"]", iIf(ctrlLecture("lstGroupeChamps["+i+"]") != -1, 1, -1));
        ctrlEtat("lstChampsTabTrie["+i+"]", iIf(ctrlLecture("lstChampsTabAff["+i+"]") != -1, 1, -1));
    }

//*************** Marque le Bloc "Modifié" ***************    
    if(init == false){ctrlInitValeur("majAffChamps", 1);}      
    
}
//=================================================================================
//					Initialise une Liste de Champs en Fonction d'un Groupe
//=================================================================================
function initLstChamps(identGroupe, iListe){

    var tabParametre = new Array();

    ctrlRazIndex("lstChampsTabAff["+iListe+"]");
    tabParametre["groupe"] = identGroupe;
            
//*************** Lecture et des Champs du Groupe si pas Déja Chargé ***************
	if(!tabLstIdent[tabParametre["groupe"]]){
		var retourAjax = ajaxExecution("prog_scr_champs_groupe", tabParametre, 0);
		tabLstIdent[tabParametre["groupe"]] = ajaxRetourItem(retourAjax, "ident", "intitule", null);
	}
	
//*************** Initialisation la Liste Champs ***************
    ctrlInitIndex("lstChampsTabAff["+iListe+"]", tabLstIdent[tabParametre["groupe"]], true); 
	
}
//=================================================================================
//					Fonction de Mise en Etat des Controls au Démarage de la page
//=================================================================================
function exeFinPage(){
    
//*************** Activation du Formulaire ***************
    var tabFnt = new Array();
    tabFnt["_execLoad"] = Array("majFormat(true)", "majColoriage(true)", "majAffChamps(true)");
    tabFnt["format"]    = Array("majFormat(false)");
    tabFnt["coloriage"] = Array("majColoriage(false)");
    tabFnt["affChamps"] = Array("majAffChamps(false)");
    frmActivation("objForm", tabFnt);
	
}
//=================================================================================
//					Ajoute des Items à un objet Liste
//=================================================================================
function ajaxRetourItem(xmlHttp, elementValeur, elementIntitule, tabElementAnnexe){

	var tabValeur = new Array();

//*************** Lecture des Données ***************
	if((xmlHttp.readyState == 4) && (xmlHttp.status == 200)){
		var docXml = xmlHttp.responseXML;
		var index  = docXml.getElementsByTagName(elementValeur);
		var texte  = docXml.getElementsByTagName(elementIntitule);
        var tabAnnexe = new Array();
        for(var i in tabElementAnnexe){
            tabAnnexe[tabElementAnnexe[i]] = docXml.getElementsByTagName(tabElementAnnexe[i]);
        }

//*************** Lecture des Elements***************
        if((index.length != 0) && (texte.length == index.length)){
            for(var i = 0; i < index.length; i++){
                tabValeur[i] = new Array();
                
//*************** Lecture des Elements Mode FireFox ***************
				if(texte.item(i).textContent){
					tabValeur[i]["valeur"]   = index.item(i).textContent;
                    tabValeur[i]["intitule"] = texte.item(i).textContent;
                    for(nomAnnexe in tabAnnexe){
                        tabValeur[i][nomAnnexe] = tabAnnexe[nomAnnexe].item(i).textContent;
                    }
                    
//*************** Lecture des Elements Mode IE ***************
				}else{
					tabValeur[i]["valeur"]   = index.item(i).text;
                    tabValeur[i]["intitule"] = texte.item(i).text;
                    for(nomAnnexe in tabAnnexe){
                        tabValeur[i][nomAnnexe] = tabAnnexe[nomAnnexe].item(i).text;
                    }
				}     
            }

//*************** Ajout de la Valeur dans le Tableau ***************
		    return tabValeur;
            
//*************** Si pas de Valeurs ***************
		}else{
            return tabValeur;
		}
        		
//*************** Erreur de Lecture du Fichier ***************
	}else{
		alert("Erreur Ajax fonction \"ajaxRetourItem\" lecture des éléments \""+elementValeur+"\" et \""+elementIntitule+"\"");
		return false;
	}
    
}
//=================================================================================
//					Lecture des Valeurs Remontées par un Script Ajax
//=================================================================================
function ajaxRetourListe(xmlHttp, nomElement){

	var tabValeur = new Array();

//*************** Lecture des Données ***************
	if((xmlHttp.readyState == 4) && (xmlHttp.status == 200)){
		var docXml = xmlHttp.responseXML;
		var texte  = docXml.getElementsByTagName(nomElement);

//*************** Lecture de la Liste ***************
		if(texte.length != 0){
            for(var i = 0; i < texte.length; i++){
				if(texte.item(i).textContent){
					tabValeur[i] = texte.item(i).textContent;
				}else{
					tabValeur[i] = texte.item(i).text;
				}                
            }

//*************** Ajout de la Valeur dans le Tableau ***************
    		return tabValeur;

//*************** Si pas de Valeurs ***************
		}else{
    		return tabValeur;
		}
        	
//*************** Erreur de Lecture du Fichier ***************
	}else{
		alert("Erreur Ajax fonction \"ajaxRetourListe\" lecture de l'élément \""+nomElement+"\"");
		return false;
	}

}
//=================================================================================
//					Lecture de la Totalité du Flux
//=================================================================================
function ajaxRetourFlux(xmlHttp){

//*************** Lecture des Données ***************
	if((xmlHttp.readyState == 4) && (xmlHttp.status == 200)){
		return xmlHttp.responseText;

//*************** Erreur de Lecture du Fichier ***************
	}else{
		alert("Erreur Ajax fonction \"ajaxRetourFlux\"");
		return false;
	}

}

Répondre
jordane45 18035Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 11 août 2017 Dernière intervention - 5 juil. 2017 à 10:11
Bonjour,
Il s'agit d'une nouvelle question.... il te faut donc ouvrir une nouvelle discussion.
Nouvelle discussion dans laquelle tu seras un tantinet plus précis sur le souci rencontré..... (car là ce n'est pas clair ! )
Répondre
Ndediop 101Messages postés jeudi 2 mars 2017Date d'inscription 5 juillet 2017 Dernière intervention - 5 juil. 2017 à 10:21
D'accords merci!
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !