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écuperer mes valeur de checkox qui sont dans un IFRAME [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut Récuperer mes valeur de checkox qui sont dans un IFRAME
    Bonjour a tous.

    Pour des raisons d'esthétique et de simplicité, j'ai une page dans laquelle se trouve un formulaire pour ajouter un contact ( nom, prenom,etc ) et dans cette page j'ai un Iframe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <fieldset>
    			<legend>Report interest</legend>
     
    				<IFRAME src="Reports/listingreports.php" width="100%" height="200px" scrolling="auto" frameborder="0"></IFRAME>
     
    		</fieldset>
    Dans listingreports.php je liste en faite une table de données qui est formatée en tableau.

    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 
    	// Connecxion au serveur mysql
     
    	// Connexion a la base de donnée : 
     
     
    	$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL 
     
    	// Compte le nombre d'entrées que l'on va lister
    	$req = mysql_query("SELECT COUNT(*) as nbr FROM reports WHERE Listing=1");
    	$row = mysql_fetch_array($req);
    	$nbrentree = $row['nbr']; 
     
    	echo'<table id="separation">';
    		// Puis on fait une boucle pour tout afficher.
    		for ($numero = 1; $numero<$nbrentree+1; $numero++)
    		{ 
    		$donnees = mysql_fetch_array($reponse);
      		echo '<tr>
    				<td class="col3"><input  type="checkbox" value="'. $donnees['Id_reports'] .'"/>  
              		<td class="col4">' . $donnees['Name'] . '</td>';
              		$date= substr_replace($donnees['Date'], '', 7, 3);
              		echo '<td class="col5">' . $date . '</td>
            	  </tr>';
    		}
     
    	mysql_close(); // Déconnexion de MySQL
    	?>

    j'ai donc dans mon iframe : une check box ( qui prends comme valeurs l'id_report - le nom du rapport - sa date

    Je voudrais en faite quand je clic sur mon bouton du formulaire récupérer mes checkbox qui sont cochées dans mon IFRame.

    Si vous pouviez m'aider.

    Merci d'avance

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour, qu'est ce qui ne marche pas, d'autres parts la génération de ta liste était largement optimisable.

    Pour récupérer les valeurs des <input/> il faut que ceux-ci aient un attribut name.

    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
    <?php 
    	// Connecxion au serveur mysql		  
    	// Connexion a la base de donnée : capgemini	   
    	$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL  	
    	$nb_entrees = mysql_num_rows($reponse); // variable inutilisée
    	echo'<table id="separation">';
    		// Puis on fait une boucle pour tout afficher.
    		while($donnees = mysql_fetch_array($reponse))
    		{ 
      		echo '<tr>
    			<td class="col3"><input  type="checkbox" value="'. $donnees['Id_reports'] .'" name="cb[]"/>  
              		<td class="col4">' . $donnees['Name'] . '</td>';
              		$date= substr_replace($donnees['Date'], '', 7, 3);
              		echo '<td class="col5">' . $date . '</td>
            	      </tr>';
    		}
     
    	mysql_close(); // Déconnexion de MySQL
    	?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $_POST['cb'] contient la liste des cases cochées.
    $_POST['cb'][0] est le premier élément coché.
     
    echo 'Vous avez coché : ';
    foreach($_POST['cb'] as $cb){
       echo $cb;
    }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    d'autres parts la génération de ta liste était largement optimisable.
    Pourquoi elle serait-elle optimisable ?

    Pour récupérer les valeurs des <input/> il faut que ceux-ci aient un attribut name.
    oui j'ai mis value="" mais c'etait plutot le name="" que je devais mettre.

    si je met simplement ceci cela récupère mes valeurs dans l'iframe ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $_POST['cb'] contient la liste des cases cochées.
    $_POST['cb'][0] est le premier élément coché.
    je test !

  4. #4
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    [QUOTE=bullrot;3740240]Pourquoi elle serait-elle optimisable ?[QUOTE]
    Regarde le code que j'ai écris au-dessus. Toi tu faisais un requête de séléction, une requête pour compter le nombre d'enregistrements et tu bouclais dessus avec une boucle POUR.

    Moi je fais une requête et je la parcours, après si tu veux connaitre le nombre d'enregistrements que celle-ci renvoie, utilises mysql_num_rows(); a la place d'executer une seconde requête.

    Citation Envoyé par bullrot Voir le message
    oui j'ai mis value="" mais c'etait plutot le name="" que je devais mettre.
    NOn, tu peux laisser value="" mais il faut mettre name="quelquechose", car ce name représente le nom du champ et donc c'est ce nom qui te permettra de le récupérer en PHP une fois le formulaire validé.
    Citation Envoyé par bullrot Voir le message
    si je met simplement ceci cela récupère mes valeurs dans l'iframe ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $_POST['cb'] contient la liste des cases cochées.
    $_POST['cb'][0] est le premier élément coché.
    je test !
    Non, je t'ai donné la technique pour récupérer les valeurs cochées, de plus, à savoir que pour récupérer les valeurs dansl 'iframe, il faut que le code PHP se trouve dans l'iframe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // liste toutes les valeurs cochés, apres tu en fais ce que tu souhaites
    foreach($_POST['cb'] as $cb){
     echo $ cb
    }

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    Alors j'ai essayé ceci:

    Dans mon iframe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    for ($numero = 1; $numero<$nbrentree+1; $numero++)
    		{ 
    		$donnees = mysql_fetch_array($reponse);
      		echo '<tr>
    				<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              		<td class="col4">' . $donnees['Name'] . '</td>';
              		$date= substr_replace($donnees['Date'], '', 7, 3);
              		echo '<td class="col5">' . $date . '</td>
            	  </tr>';
    		}
    et dans ma page principale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $rapports=$_POST['cb'];
     
     
     
     	echo 'Vous avez coché : ';
    	foreach($_POST['cb'] as $cb)
    	{
       	echo $cb;
    	}
     
    	}
    j'ai 2 erreur :

    Notice: Undefined index: cb in C:\Program Files\EasyPHP 2.0b1\www\SellMate\Contacts\addcontacts.php on line 554
    Vous avez coché :
    Warning: Invalid argument supplied for foreach() in C:\Program Files\EasyPHP 2.0b1\www\SellMate\Contacts\addcontacts.php on line 559

  6. #6
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Comme dit précédemment, le code PHP de récupération des checkbox cochés doit se faire dans l'iframe.

    Aussi ce code ne doit ête exécuté que si l'on est sur un postback :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if(isset($_POST['cb'])){
        $rapports = $_POST['cb'];		
        echo 'Vous avez coché : ';
        foreach($rapports as $rapport){
            echo $rapport;
        }
    }
    Ya un truc que j'ai pas du comprendre aussi, pourquoi tu fais une boucle for puis une boucle while ?

    Je te redonne une seconde fois le code correct pour écrire les checkbox :
    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
    <?php 
    	// Connecxion au serveur mysql		  
    	// Connexion a la base de donnée : capgemini	   
    	$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL  	
    	$nb_entrees = mysql_num_rows($reponse); // variable inutilisée
    	echo'<table id="separation">';
    		// Puis on fait une boucle pour tout afficher.
    		while($donnees = mysql_fetch_array($reponse))
    		{ 
      		echo '<tr>
    			<td class="col3"><input  type="checkbox" value="'. $donnees['Id_reports'] .'" name="cb[]"/>  
              		<td class="col4">' . $donnees['Name'] . '</td>';
              		$date= substr_replace($donnees['Date'], '', 7, 3);
              		echo '<td class="col5">' . $date . '</td>
            	      </tr>';
    		}
     
    	mysql_close(); // Déconnexion de MySQL
    	?>

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    J'avais pas vu ta reponse.

    Effectivement j'ai adapté comme ton code qui est bien mieux! une requête au lieu de 2

    Oups! j'ai mis ma récupération des données dans la page principale.

    En fait sur ma page principale je fais une serie de test pour savoir si le nom est rempli, le prenom, etc...
    ensuite si toutes les conditions sont remplies je recupere mes données et ensuite je fais apel a une fonction qui se charge d'ajouter dans ma bdd

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // Verification si le Nom est deja utilisé
      		$Resultat=mysql_query("SELECT * FROM `contacts` WHERE `Last_name` LIKE '$lname'");
      		if (mysql_numrows($Resultat)==0) // Le Nom n'est pas encore utilisé => on enregistre le Contact	
      		{
    		addcontact($gender,$lname,$rapports);	   /* appel de la fonction qui se charge d'ajouter un contact */	 
    		}
    c'est pour cela que j'avais récupérer ma valeurs cb dans la page principale!

    mais comment faire passer ma variables $rapports dans la page principale ?

  8. #8
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Si ton action de ton formulaire qui est dans l'iframe pointe vers ta page principale, c'est l'iframe qui sera redirigée vers la page principale.

    Tu peux peut-être t'orienter vers l'attribut target du formulaire.

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    ca avance

    j'ai mis ceci dans ma page de l'iframe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
     
     	if(isset($_POST['cb']))
    	{
        $rapports = $_POST['cb'];		
     
    	echo 'Vous avez coché : ';
        	foreach($rapports as $rapports)
    		{
            echo $rapports;
        	}  
    	}
    ?>
    et dans ma page principale j'ai encore rien fait.

    Mon iframe s'affiche bien mais par contre quand je clic sur le bouton add.. il ne se passe rien...

  10. #10
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Re,

    quel bouton add ?

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    celui du formulaire sur la page principale

    je regarde pour l'option target...

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    celui du formulaire sur la page principale

    je n'ai que un formulaire et mon iframe ne me sert juste a lister les rapports.

    je regarde pour l'option target...

  13. #13
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Le formulaire doit se situer dans l'iframe, et donc, par la meme occasion, le bouton de validation aussi. (bouton submit)

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    oula je pense qu l'on devie ou alors je ne saisi pas ...

    Donc je vais faire un petit résumé ( j'ai simplifier le code mais le principal est la ):

    Ma page addcontact ( celle qui contient le formulaire )

    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
    <form action="index.php?page=P_Addcontacts" method="post" enctype="multipart/form-data" name="addcontacts">
    		<div id="contactsleft">
     
    		<!-- Add a Contact -->
    		<fieldset>
    			<legend>Add a Contact</legend>
     
    			<p>
    				<label class="text">Gender :</label>
    				<input class="radio" type="radio" name="IGender" value="Mr" <?php echo (isset($_POST['IGender']) &&  $_POST['IGender'] == 'Mr')?'checked="checked"':'';?> /><label class="radioCheck">Mr.</label>
    				<input class="radio" type="radio" name="IGender" value="Mrs" <?php echo (isset($_POST['IGender']) &&  $_POST['IGender'] == 'Mrs')?'checked="checked"':'';?>/><label class="radioCheck">Mrs.</label>
    				<input class="radio" type="radio" name="IGender" value="Miss" <?php echo (isset($_POST['IGender']) &&  $_POST['IGender'] == 'Miss')?'checked="checked"':'';?>/><label class="radioCheck">Miss</label><span class="warning">*</span>
    			</p>
     
    			<p>
    				<label class="text">First Name :</label><input class="text" name="IFirstname" type="text" size="30" maxlength="30" <?php if (isset($_POST['IFirstname'])) {echo 'value="' .$_POST['IFirstname']. '" ';}?> /><span class="warning">*</span>
    			</p>
     
    			<p>
    				<label class="text">Last Name :</label><input class="text" name="ILastname" type="text" size="30" maxlength="30" <?php if (isset($_POST['ILastname'])) {echo 'value="' .$_POST['ILastname']. '" ';}?> /><span class="warning">*</span>
    			</p>
    </fieldset>
     
    		</br>
    		</br>
     
    		<fieldset>
    			<legend>Report interest</legend>
     
    				<IFRAME src="Reports/listingreports.php" width="100%" height="200px" scrolling="auto" frameborder="0"></IFRAME>
     
    		</fieldset>
     
    <p class="envoy">
    				<input type="submit" value="Add Contact" />
    				<input type="hidden" name="validation" value="ok"/>
    			</p>
    Donc j'ai mon iframe qui fait partie du fieldset de mon formulaire.

    et ma page listingreports ne contient que la liste de la table report

    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
    <?php 
    	// Connecxion au serveur mysql
     
    	// Connexion a la base de donnée :
     
    	$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL 
     
    	echo'<table id="separation">';
    		// Puis on fait une boucle pour tout afficher.
    		while($donnees = mysql_fetch_array($reponse))
    		{ 
    	   echo '<tr>
    				<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              		<td class="col4">' . $donnees['Name'] . '</td>';
              		$date= substr_replace($donnees['Date'], '', 7, 3);
              		echo '<td class="col5">' . $date . '</td>
            	  </tr>';
    		}
     
    	mysql_close(); // Déconnexion de MySQL
    	?>
    vous voyez plus claire ?

    je pense ne peut pas inclure mon formulaire dans l'iframe ou alors je ne comprends pas le sens de la phrase

  15. #15
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    HA ok tu as mis une partie de ton formulaire dans l'iframe, mais ca sert à quoi ?

    De plus a mon avis cela ne fonctionnera pas.

    à la place de la balise iframe, tu peux écrire :
    include('Reports/listingreports.php');

    ce qui aura pour effet d'executer le code contenu dans listingreports.php, aussi, si ce code n'est utilisé que dans cette page, autant directement copier le code dans la page addcontact.php, soit :
    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
    <form action="index.php?page=P_Addcontacts" method="post" enctype="multipart/form-data" name="addcontacts">
    		<div id="contactsleft">
     
    		<!-- Add a Contact -->
    		<fieldset>
    			<legend>Add a Contact</legend>
     
    			<p>
    				<label class="text">Gender :</label>
    				<input class="radio" type="radio" name="IGender" value="Mr" <?php echo (isset($_POST['IGender']) &&  $_POST['IGender'] == 'Mr')?'checked="checked"':'';?> /><label class="radioCheck">Mr.</label>
    				<input class="radio" type="radio" name="IGender" value="Mrs" <?php echo (isset($_POST['IGender']) &&  $_POST['IGender'] == 'Mrs')?'checked="checked"':'';?>/><label class="radioCheck">Mrs.</label>
    				<input class="radio" type="radio" name="IGender" value="Miss" <?php echo (isset($_POST['IGender']) &&  $_POST['IGender'] == 'Miss')?'checked="checked"':'';?>/><label class="radioCheck">Miss</label><span class="warning">*</span>
    			</p>
     
    			<p>
    				<label class="text">First Name :</label><input class="text" name="IFirstname" type="text" size="30" maxlength="30" <?php if (isset($_POST['IFirstname'])) {echo 'value="' .$_POST['IFirstname']. '" ';}?> /><span class="warning">*</span>
    			</p>
     
    			<p>
    				<label class="text">Last Name :</label><input class="text" name="ILastname" type="text" size="30" maxlength="30" <?php if (isset($_POST['ILastname'])) {echo 'value="' .$_POST['ILastname']. '" ';}?> /><span class="warning">*</span>
    			</p>
    </fieldset>
     
    		</br>
    		</br>
     
    	<?php 
    	// Connecxion au serveur mysql
     
    	// Connexion a la base de donnée :
     
    	$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL 
     
    	echo'<table id="separation">';
    		// Puis on fait une boucle pour tout afficher.
    		while($donnees = mysql_fetch_array($reponse))
    		{ 
    	   echo '<tr>
    				<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              		<td class="col4">' . $donnees['Name'] . '</td>';
              		$date= substr_replace($donnees['Date'], '', 7, 3);
              		echo '<td class="col5">' . $date . '</td>
            	  </tr>';
    		}
     
    	mysql_close(); // Déconnexion de MySQL
    	?>
     
    <p class="envoy">
    				<input type="submit" value="Add Contact" />
    				<input type="hidden" name="validation" value="ok"/>
    			</p>

  16. #16
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    autant pour moi.

    le but été en fait de fixer une hauteur maximal à l'affichage des rapports.

    je peux en avoir 1 rapport comme 500. donc je voulais définir une taille de 100px et avoir une scroolbar si cela dépasse.

    Mon problème d'iframe est donc résolu car je viens de voir qu'il est possible d'appliquer une scroolbar a un div.

    par contre j'ai 1 problème et oui toujours lol.

    Donc sur ma page j'ai 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
    <fieldset>
    			<legend>Report interest</legend>
     
    				<div id="scroll"> 
    					<table id="separation">
    					<?php 
     
    					$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL 
     
    					echo'<table id="separation">';
    					// Puis on fait une boucle pour tout afficher.
    					while($donnees = mysql_fetch_array($reponse))
    					{ 
    	   				echo '<tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]" />  
              					<td class="col4">' . $donnees['Name'] . '</td>';
              					$date= substr_replace($donnees['Date'], '', 7, 3);
              					echo '<td class="col5">' . $date . '</td>
            	 			 </tr>';
    					}
    					?>	          
    					</table>
    				</div>
    		</fieldset>
    avec comme css :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    div#scroll {
     
    width:100%; /* largeur à définir */
     
    height:100px; /* hauteur à définir*/
     
    overflow:auto; /* pour faire apparaître les scrolls */
    			}

    mes name pour les checkbox sont ceci ( généré ) :

    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
    <div id="scroll"> 
    					<table id="separation">
    					<table id="separation"><tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              					<td class="col4">customer report 2006</td><td class="col5">2006-04</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              					<td class="col4">financial reports 2003</td><td class="col5">2003-01</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              					<td class="col4">financial reports 2005</td><td class="col5">2005-01</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              					<td class="col4">report annual</td><td class="col5">2008-01</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              					<td class="col4">time reports</td><td class="col5">2006-04</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="cb[]"/>  
              					<td class="col4">World payement</td><td class="col5">2008-01</td>
            	 			 </tr>	          
    					</table>
    				</div>
    merci pour ton aide.

  17. #17
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Re,

    Ton problème c'est que il y a un scrolling horizontal ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    div#scroll {
     
    width:100%; /* largeur fixe */
     
    height:100px; /* hauteur fixe */
     
    overflow-y:auto; /* scrolling vertical auto */
     
    overflow-x:hidden; /* on cache le scrolling horizontal */
    }

  18. #18
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    Oui mais non :p c'est parce que mon tableau dépassé avec les margin et donc il me mettais une scroolbar horizontal. mais maitenant j'ai résolu le probléme

    Par contre j'ai toujours le probléme des name=cb[]

  19. #19
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Enleve [] c'est un erreur de ma part.

  20. #20
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    Voila je suis maintenant en dernière phase .

    Comment faire pour récupérer les valeurs des checkbox cohées ?

    voici ma page 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
    <div id="scroll"> 
    					<table id="separation">
    					<?php 
     
    					$reponse = mysql_query("SELECT * FROM reports WHERE Listing=1 ORDER BY Name "); // Requête SQL 
    					// Puis on fait une boucle pour tout afficher.
    					while($donnees = mysql_fetch_array($reponse))
    					{ 
    	   				echo '<tr>
    							<td class="col3"><input type="checkbox" value="1" name="'. $donnees['Id_reports']. '" />  
              					<td class="col4">' . $donnees['Name'] . '</td>';
              					$date= substr_replace($donnees['Date'], '', 7, 3);
              					echo '<td class="col5">' . $date . '</td>
            	 			 </tr>';
    					}
    					?>	          
    					</table>
    				</div>
    voici ma page généré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
    <div id="scroll"> 
    					<table id="separation">
    					<tr>
    							<td class="col3"><input type="checkbox" value="1" name="9" />  
              					<td class="col4">customer report 2006</td><td class="col5">2006-04</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="3" />  
              					<td class="col4">financial reports 2003</td><td class="col5">2003-01</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="4" />  
              					<td class="col4">financial reports 2005</td><td class="col5">2005-01</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="5" />  
              					<td class="col4">report annual</td><td class="col5">2008-01</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="6" />  
              					<td class="col4">time reports</td><td class="col5">2006-04</td>
            	 			 </tr><tr>
    							<td class="col3"><input type="checkbox" value="1" name="1" />  
              					<td class="col4">World payement</td><td class="col5">2008-01</td>
            	 			 </tr>	          
    					</table>
    				</div>
    je voudrais récuperer si le checkbox est coché l'id_reports.

    merci pour tout

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/12/2010, 11h39
  2. Comment éviter que google répete des mots qui sont dans la description du meta tag
    Par tese84 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/09/2006, 07h55
  3. Réponses: 1
    Dernier message: 29/08/2006, 14h45
  4. Réponses: 3
    Dernier message: 18/07/2006, 10h17
  5. Utiliser les options qui sont dans ma table
    Par valery17 dans le forum Access
    Réponses: 1
    Dernier message: 21/04/2006, 22h45

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