begin process at 2012 05 27 19:05:46
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Javascript / DHTML

 > LISTE DÉROULANTE AVEC MULTICOLONNES AVEC CHECKBOX [PHP / JS / CSS]

LISTE DÉROULANTE AVEC MULTICOLONNES AVEC CHECKBOX [PHP / JS / CSS]


 Information sur la source

Note :
8,75 / 10 - par 4 personnes
8,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Javascript / DHTML Classé sous :select, multi, checkbox, css, php Niveau :Débutant Date de création :02/06/2006 Date de mise à jour :07/06/2006 09:07:43 Vu / téléchargé :43 213 / 1 808

Auteur : ramzy

Ecrire un message privé
Site perso
Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
C'est un code sans prétention qui permet de créer une pseudo-balise SELECT contenant des checkbox à l'aide d'une balise DIV dont on fourni le type de débordement à scroll.

Ce code n'est pas compliqué à réaliser ni à comprendre : une fonction PHP pour créer le pseudo-composant select et deux fonction javascript pour gérer les événements.

Source

  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  • <html>
  • <head>
  • <title>Test d'un select</title>
  • <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  • <style type="text/css">
  • body {
  • background-color : #EEEEEE;
  • }
  • legend {
  • font: 11px Tahoma;
  • color : #2266AA;
  • padding : 0px 4px 0px 4px;
  • }
  • fieldset {
  • border : 1px solid #AAAAAA;
  • padding : 4px 4px 4px 4px;
  • }
  • /*
  • ===========================
  • balise obligatoire
  • ===========================
  • */
  • .div_select {
  • border: 1px solid #00CCFF;
  • width : 400px;
  • background-color : #FFFFFF;
  • }
  • .div_select_header {
  • border-bottom: 1px solid #00CCFF;
  • background-color : #00CCFF;
  • }
  • .div_select_header td {
  • padding: 0px 6px 0px 6px;
  • font: 11px Tahoma;
  • font-weight: bold;
  • background-color : #00CCFF;
  • color: #FFFFFF;
  • }
  • .div_select_content td {
  • padding: 0px 6px 0px 6px;
  • font: 10px Tahoma;
  • }
  • .div_select_content {
  • width : 400px;
  • height : 172px ;
  • overflow : scroll;
  • scrollbar-face-color: #DDDDDD;
  • scrollbar-shadow-color: #777777;
  • scrollbar-highlight-color: #ffffff;
  • scrollbar-3dlight-color: #eeeeee;
  • scrollbar-darkshadow-color: #000000;
  • scrollbar-track-color: #eeeeee;
  • scrollbar-arrow-color: #000000
  • }
  • .select_even {
  • cursor: hand;
  • background: #FFFFFF;
  • }
  • .select_odd {
  • cursor: hand;
  • background: #F2FAFF;
  • }
  • .select_over {
  • cursor: hand;
  • background-color : #CCEEFF;
  • color: #000000;
  • font-weight: bold;
  • }
  • .select_checked {
  • cursor: hand;
  • background-color : #CCFF99;
  • color: #000000;
  • font-weight: bold;
  • }
  • .div_cadre {
  • width: 600px;
  • text-align:center;
  • background-color: #FFFFFF;
  • border : 1px dashed #CCCCCC;
  • padding: 10px 20px 20px 20px;
  • }
  • </style>
  • <script language="javascript" type="text/javascript">
  • /**
  • * selectionne l'ensemble des elements d'une liste déroulante avec checkbox
  • * @param :
  • * - obj : le nom du pseudo-composant
  • * - nb : nombre d'elements que contient le composant
  • */
  • function selectAll(obj, nb) {
  • for (i=0; i< nb; i++) {
  • document.getElementById(obj.id + i).checked = obj.checked;
  • if(obj.checked)
  • document.getElementById("tr_"+obj.id+i).className = "select_checked";
  • else {
  • if(i % 2)
  • css = "select_odd"
  • else
  • css ="select_even";
  • document.getElementById("tr_"+obj.id+i).className = css;
  • }
  • }
  • }
  • /**
  • * selectionne l'ensemble des elements d'une liste déroulante avec checkbox
  • * @param :
  • * - obj : le nom du pseudo-composant
  • * - el_id : id de l'element (position dans le composant)
  • * - ev : le type d'evenement
  • * - css_defaut : le style de la ligne par defaut
  • * - nb : le nombre d'elements
  • */
  • function setEvenement(obj, el_id, ev, css_defaut, nb, provenance) {
  • //--- recuperation des balises
  • comp = document.getElementById(obj);
  • tr = document.getElementById("tr_" + obj + el_id);
  • ck = document.getElementById(obj + el_id);
  • //--- si il s'agit d'un clique
  • if(ev == "click") {
  • //--- alors on coche ou decoche la checkbox
  • if(provenance = "td") ck.checked = !ck.checked;
  • //--- si on decoche, alors on decoche aussi la checkbox du composant
  • if(!ck.checked) {
  • if(comp.checked) comp.checked = false;
  • }
  • else {
  • //---sinon on vérifie que tous les elements sont cochés
  • var absent = false;
  • var i = 0;
  • while(i < nb && absent == false) {
  • if(i != el_id) {
  • if(!document.getElementById(obj + i).checked) absent = true;
  • }
  • i++;
  • }
  • if(comp.checked == absent) comp.checked = !absent;
  • }
  • }
  • //--- autres evenements
  • switch(ev) {
  • case "over":
  • tr.className = "select_over";
  • break;
  • case "out":
  • if(ck.checked)
  • tr.className = "select_checked";
  • else
  • tr.className = css_defaut;
  • break;
  • }
  • }
  • </script>
  • </head>
  • <body>
  • <?php
  • /**
  • * permet de créer le pseudo-composant
  • * @param :
  • * - nom : le nom du composant
  • * - structure : les colonnes, les dimensions, les alignements (tableau)
  • * - contenu : les elements : valeur checkbox + autres colonnes (tableau)
  • * - selection : tableau de valeur a selectionner (correspond a la valeur de la checkbox)
  • */
  • function checkedSelect( $nom, $structure, $contenu, $selection = null) {
  • //////////////// entete du composant \\\\\\\\\\\\\\\\\\\\\\\\\
  • if(sizeof($selection) == sizeof($contenu))
  • $checked = "checked";
  • else
  • $checked = "";
  • $str = '<div class="div_select">'
  • .'<div class="div_select_header">'
  • .'<table width="100%">'
  • .'<tr>'
  • .'<td width="20" align="center"><input type="checkbox" id="'.$nom.'" onClick="javascript:selectAll(this, '.sizeof($contenu).');" '.$checked.'/></td>';
  • //--- colonnes
  • for($i = 0, $max = sizeof($structure); $i < $max; $i++) {
  • $str .= '<td ';
  • if(isset($structure[$i]["align"])) $str .= 'align="'.$structure[$i]["align"].'" ';
  • if(isset($structure[$i]["width"])) $str .= 'width="'.$structure[$i]["width"].'" ';
  • $str .= '>'.$structure[$i]["name"].'</td>';
  • }
  • $str .= '<td width="1"></td>'
  • .'</tr>'
  • .'</table>'
  • .'</div>';
  • //////////////// contenu du composant \\\\\\\\\\\\\\\\\\\\\\\\\
  • $str .= '<div class="div_select_content" >'
  • .'<table width="96%">';
  • //--- pour chaque ligne
  • for($i = 0, $max = sizeof($contenu); $i < $max; $i++) {
  • //--- style css (pair / impair)
  • if($i%2)
  • $css_defaut = 'select_odd';
  • else
  • $css_defaut = 'select_even';
  • //--- element selectionne ?
  • if($selection != null && in_array($contenu[$i][0],$selection)) {
  • $checked = ' checked';
  • $css = 'select_checked';
  • }
  • else {
  • $checked = '';
  • $css = $css_defaut;
  • }
  • //--- la checkbox
  • $str .= '<tr id="tr_'.$nom.$i.'" class="'.$css.'" onMouseOver=\'javascript:setEvenement("'.$nom.'","'.$i.'","over","'.$css.'",'.sizeof($contenu).',"td");\' onMouseOut=\'javascript:setEvenement("'.$nom.'","'.$i.'","out","'.$css_defaut.'",'.sizeof($contenu).',"td");\' '
  • .' onClick=\'javascript:setEvenement("'.$nom.'","'.$i.'","click", "'.$css_defaut.'",'.sizeof($contenu).',"td");\' >'
  • .'<td width="20" ><input type="checkbox" id="'.$nom.$i.'" name="'.$nom.'[]" value="'.$contenu[$i][0].'" onClick=\'javascript:setEvenement("'.$nom.'","'.$i.'","click","'.$css_defaut.'",'.sizeof($contenu).',"ck");\' '.$checked.' /></td>';
  • //--- les colonnes
  • for($j = 1; $j < sizeof($contenu[$i]); $j++) {
  • $str .= '<td ';
  • if(isset($structure[$j-1]["align"])) $str .= 'align="'.$structure[$j-1]["align"].'" ';
  • if(isset($structure[$j-1]["width"])) $str .= 'width="'.$structure[$j-1]["width"].'" ';
  • $str .= '>'.$contenu[$i][$j].'</td>';
  • }
  • $str .= '</tr>';
  • }
  • //--- fermeture des balises
  • $str .= '</table>'
  • .'</div>'
  • .'</div>';
  • return $str;
  • }
  • //===============================================================
  • // VARIABLES D'EXEMPLES
  • //===============================================================
  • $nom = "test1";
  • $structure = array (
  • array("name" => "CODE", "align" => "center", "width" => "40px"),
  • array("name" => "NOM", "align" => "left", "width" => null)
  • );
  • $contenu = array (
  • array("AD", "AD", "TEST AD"),
  • array("CC", "CC", "TEST CC"),
  • array("DZ", "DZ", "TEST DZ"),
  • array("GV", "GV", "TEST GV"),
  • array("LS", "LS", "TEST LS"),
  • array("LC", "LC", "TEST LC"),
  • array("SG", "SG", "TEST SG")
  • );
  • $nom2 = "test2";
  • $structure2 = array (
  • array("name" => "CODE", "align" => "center", "width" => "40px"),
  • array("name" => "NOM", "align" => "left", "width" => null),
  • array("name" => "MONTANT", "align" => "right", "width" => "60px")
  • );
  • $contenu2 = array (
  • array("001", "001", "TEST 01", "150 €"),
  • array("002", "002", "TEST 02", "80 €"),
  • array("003", "003", "TEST 03", "120 €"),
  • array("004", "004", "TEST 04", "160 €"),
  • array("005", "005", "TEST 05", "20 €"),
  • array("006", "006", "TEST 06", "70 €"),
  • array("007", "007", "TEST 07", "150 €") ,
  • array("005", "005", "TEST 08", "2 654 €"),
  • array("009", "009", "TEST 09", "34 €"),
  • array("010", "010", "TEST 10", "27,50 €")
  • );
  • //======================================================
  • // VERFICATION DU POST
  • //======================================================
  • if($_POST["submit"]) {
  • echo '<b>Formulaire validé avec les éléments : </b><br>';
  • echo '<b>- '.$nom.' :</b> ';
  • for($i = 0; $i < sizeof($_POST[$nom]); $i++) {
  • if($i > 0) echo ', ';
  • echo $_POST[$nom][$i];
  • }
  • echo '<br /><b>- '.$nom2.' :</b> ';
  • for($i = 0; $i < sizeof($_POST[$nom2]); $i++) {
  • if($i > 0) echo ', ';
  • echo $_POST[$nom2][$i];
  • }
  • echo '<br /><br />';
  • }
  • ?>
  • <!-- SelectableTableRows multiple-->
  • <div align="center">
  • <div class="div_cadre">
  • <fieldset>
  • <legend>Test de selection</legend>
  • <form name="form_select" method="post" action="<?php echo $PHP_SELF; ?>">
  • <div align="center" >
  • <?php echo checkedSelect($nom, $structure, $contenu, $_POST[$nom]); ?>
  • <br />
  • <?php echo checkedSelect($nom2, $structure2, $contenu2, $_POST[$nom2]); ?>
  • <br /><input type="submit" name="submit" value="envoyer" />
  • </div>
  • </form>
  • </fieldset>
  • </div>
  • </div>
  • </body>
  • </html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Test d'un select</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<style type="text/css">
body {
	background-color : #EEEEEE;
	
}

legend {
	font: 11px Tahoma;
	color : #2266AA;
	padding : 0px 4px 0px 4px;
}

fieldset {
	border : 1px solid #AAAAAA;
	padding : 4px 4px 4px 4px;
}

/*
  ===========================
  balise obligatoire
  ===========================
*/
.div_select {
	border: 1px solid #00CCFF;
	width : 400px;
	background-color : #FFFFFF;
}

.div_select_header {
	border-bottom: 1px solid #00CCFF;
	background-color : #00CCFF;
}

.div_select_header td {
	padding: 0px 6px 0px 6px;
	font: 11px Tahoma;
	font-weight: bold;
	background-color : #00CCFF;
	color: #FFFFFF;
}

.div_select_content td {
	padding: 0px 6px 0px 6px;
	font: 10px Tahoma;
	
}

.div_select_content {
	width : 400px;
	height : 172px ;
	overflow : scroll;
	scrollbar-face-color: #DDDDDD;
	scrollbar-shadow-color: #777777;
	scrollbar-highlight-color: #ffffff;
	scrollbar-3dlight-color: #eeeeee;
	scrollbar-darkshadow-color: #000000;
	scrollbar-track-color: #eeeeee;
	scrollbar-arrow-color: #000000
}

.select_even {
	cursor: hand;
	background:	#FFFFFF;
}

.select_odd {
	cursor: hand;
	background:	#F2FAFF;
}

.select_over {
	cursor: hand;
	background-color : #CCEEFF;
	color: #000000;
	font-weight: bold;
}

.select_checked {
	cursor: hand;
	background-color : #CCFF99;
	color: #000000;
	font-weight: bold;
}

.div_cadre {
	width: 600px;
	text-align:center;
	background-color: #FFFFFF;
	border : 1px dashed #CCCCCC;
	padding: 10px 20px 20px 20px;
}

</style>
<script language="javascript" type="text/javascript">

	/**
	 * selectionne l'ensemble des elements d'une liste déroulante avec checkbox
	 * @param :
	 *    - obj : le nom du pseudo-composant
	 *    - nb : nombre d'elements que contient le composant
	 */	
	function selectAll(obj, nb) {				
		for (i=0; i< nb; i++) {		
			document.getElementById(obj.id + i).checked = obj.checked;
									
			if(obj.checked)
				document.getElementById("tr_"+obj.id+i).className = "select_checked";
			else {
				if(i % 2)
					css = "select_odd" 
				else 
					css ="select_even";
			
				document.getElementById("tr_"+obj.id+i).className = css;
			}
		}
	}
	
	/**
	 * selectionne l'ensemble des elements d'une liste déroulante avec checkbox
	 * @param :
	 *    - obj : le nom du pseudo-composant
	 *    - el_id : id de l'element (position dans le composant)
	 *   - ev : le type d'evenement
	 *   - css_defaut : le style de la ligne par defaut
	 *  - nb : le nombre d'elements
	 */			 
	function setEvenement(obj, el_id, ev, css_defaut, nb, provenance) {
	
		//--- recuperation des balises
		comp = document.getElementById(obj);
		tr   = document.getElementById("tr_" + obj + el_id);
		ck   = document.getElementById(obj + el_id);

		//--- si il s'agit d'un clique
		if(ev == "click") {
			//--- alors on coche ou decoche la checkbox
			if(provenance = "td") ck.checked = !ck.checked;
			
			
			//--- si on decoche, alors on decoche aussi la checkbox du composant			
			if(!ck.checked) {
				if(comp.checked) comp.checked = false;
			}
			else {
			
				//---sinon on vérifie que tous les elements sont cochés
				var absent = false;
				var i = 0;
				
				while(i < nb && absent == false)	{						
					if(i != el_id) {
						if(!document.getElementById(obj + i).checked) absent = true;
					}					
					i++;								
				}
				
				if(comp.checked == absent) comp.checked = !absent;
			}
		}
			
		//--- autres evenements
		switch(ev) {
			case "over":
				tr.className = "select_over";
				break;
			
			case "out":
				if(ck.checked)
					tr.className = "select_checked";
				else
					tr.className = css_defaut;					
				break;		
		}
	}

</script>
</head>
<body>
	<?php

		/**
		  * permet de créer le pseudo-composant
		  * @param :
		  *   - nom : le nom du composant
		  *   - structure : les colonnes, les dimensions, les alignements (tableau)
		  *   - contenu : les elements : valeur checkbox + autres colonnes (tableau)
		  *   - selection : tableau de valeur a selectionner (correspond a la valeur de la checkbox)
		  */
		function checkedSelect( $nom, $structure, $contenu, $selection = null) {
		
			//////////////// entete du composant \\\\\\\\\\\\\\\\\\\\\\\\\		
			if(sizeof($selection) == sizeof($contenu)) 
				$checked = "checked";
			else
				$checked = "";
			
			
			$str = '<div class="div_select">'
				  .'<div class="div_select_header">'
				  .'<table width="100%">'
				  .'<tr>'
				  .'<td width="20" align="center"><input type="checkbox" id="'.$nom.'" onClick="javascript:selectAll(this, '.sizeof($contenu).');" '.$checked.'/></td>';
				  
			//--- colonnes
			for($i = 0, $max = sizeof($structure); $i < $max; $i++) {
				$str .= '<td ';
				if(isset($structure[$i]["align"])) $str .= 'align="'.$structure[$i]["align"].'" ';
				if(isset($structure[$i]["width"])) $str .= 'width="'.$structure[$i]["width"].'" ';					
				$str .= '>'.$structure[$i]["name"].'</td>';			
			}
			
			$str .= '<td width="1"></td>'
				   .'</tr>'
				   .'</table>'
				   .'</div>';
				   
			//////////////// contenu du composant \\\\\\\\\\\\\\\\\\\\\\\\\		
			$str .= '<div class="div_select_content" >'				
				   .'<table width="96%">';

			//--- pour chaque ligne
			for($i = 0, $max = sizeof($contenu); $i < $max; $i++) {
					
				//--- style css (pair / impair)	
				if($i%2)
					$css_defaut = 'select_odd';
				else
					$css_defaut = 'select_even';	
					
				//--- element selectionne ?
				if($selection != null && in_array($contenu[$i][0],$selection)) {					
					$checked = ' checked';
					$css     = 'select_checked';						
				}
				else {
					$checked = '';
					$css = $css_defaut;					
				}
			
				//--- la checkbox
				$str .= '<tr id="tr_'.$nom.$i.'" class="'.$css.'" onMouseOver=\'javascript:setEvenement("'.$nom.'","'.$i.'","over","'.$css.'",'.sizeof($contenu).',"td");\'  onMouseOut=\'javascript:setEvenement("'.$nom.'","'.$i.'","out","'.$css_defaut.'",'.sizeof($contenu).',"td");\' '
					   .' onClick=\'javascript:setEvenement("'.$nom.'","'.$i.'","click", "'.$css_defaut.'",'.sizeof($contenu).',"td");\' >'
					   .'<td width="20" ><input type="checkbox" id="'.$nom.$i.'" name="'.$nom.'[]" value="'.$contenu[$i][0].'" onClick=\'javascript:setEvenement("'.$nom.'","'.$i.'","click","'.$css_defaut.'",'.sizeof($contenu).',"ck");\' '.$checked.' /></td>';
					
				//--- les colonnes
				for($j = 1; $j < sizeof($contenu[$i]); $j++) {					
					$str .= '<td ';
					if(isset($structure[$j-1]["align"])) $str .= 'align="'.$structure[$j-1]["align"].'" ';	
					if(isset($structure[$j-1]["width"])) $str .= 'width="'.$structure[$j-1]["width"].'" ';					
					$str .= '>'.$contenu[$i][$j].'</td>';		
				}

				$str .= '</tr>';
			}
			
			//--- fermeture des balises
			$str .= '</table>'
				   .'</div>'
				   .'</div>';
			
			return $str;
		}
		
		
		//===============================================================
		// VARIABLES D'EXEMPLES
		//===============================================================
		$nom = "test1";
		
		$structure = array (
			array("name" => "CODE", "align" => "center", "width" => "40px"),
			array("name" => "NOM", "align" => "left", "width" => null)
		);
	
		$contenu = array (
			array("AD", "AD", "TEST AD"),
			array("CC", "CC", "TEST CC"),
			array("DZ", "DZ", "TEST DZ"),
			array("GV", "GV", "TEST GV"),
			array("LS", "LS", "TEST LS"),
			array("LC", "LC", "TEST LC"),
			array("SG", "SG", "TEST SG")	
		);
		
		$nom2 = "test2";
		
		$structure2 = array (
			array("name" => "CODE", "align" => "center", "width" => "40px"),
			array("name" => "NOM", "align" => "left", "width" => null),
			array("name" => "MONTANT", "align" => "right", "width" => "60px")
		);
	
		$contenu2 = array (
			array("001", "001", "TEST 01", "150 €"),
			array("002", "002", "TEST 02", "80 €"),
			array("003", "003", "TEST 03", "120 €"),
			array("004", "004", "TEST 04", "160 €"),
			array("005", "005", "TEST 05", "20 €"),
			array("006", "006", "TEST 06", "70 €"),
			array("007", "007", "TEST 07", "150 €")	,
			array("005", "005", "TEST 08", "2 654 €"),
			array("009", "009", "TEST 09", "34 €"),
			array("010", "010", "TEST 10", "27,50 €")	
		);		
		
		//======================================================
		// VERFICATION DU POST
		//======================================================
		if($_POST["submit"]) {			
			echo '<b>Formulaire validé avec les éléments : </b><br>';
			
			echo '<b>- '.$nom.' :</b> ';
			for($i = 0; $i < sizeof($_POST[$nom]); $i++) {
				if($i > 0) echo ', ';
				echo $_POST[$nom][$i];
			}
			
			echo '<br /><b>- '.$nom2.' :</b> ';
			for($i = 0; $i < sizeof($_POST[$nom2]); $i++) {
				if($i > 0) echo ', ';
				echo $_POST[$nom2][$i];
			}
			
			echo '<br /><br />';
		}
	
	?>


	<!-- SelectableTableRows multiple-->
	<div align="center">
		<div class="div_cadre">
			<fieldset>
				<legend>Test de selection</legend>
				<form name="form_select" method="post" action="<?php echo $PHP_SELF; ?>"> 
				<div align="center" >
					<?php echo checkedSelect($nom, $structure, $contenu, $_POST[$nom]); ?>
					<br />
					<?php echo checkedSelect($nom2, $structure2, $contenu2, $_POST[$nom2]); ?>
					<br /><input type="submit" name="submit" value="envoyer" />
				</div>
				</form>
			</fieldset>
		</div>
	</div>
	
</body>
</html>


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

07 juin 2006 09:07:43 :
ajout d'un Zip

 Sources du même auteur

Source avec Zip Source avec une capture EXPLORATEUR DE FICHIERS

 Sources de la même categorie

Source avec Zip Source avec une capture PHPJSVFORM : DES CLASSES PHP, DES JAVASCRIPTS POUR CRÉER FAC... par synanceia
BOUTON POUR SITE WEB PAYMENT par Tom56340
Source avec Zip Source avec une capture PETIT CLIENT + AJAX + PHP par kiki67100
Source avec Zip Source avec une capture BOÎTE À ONGLETS / MENUS ET SOUS-MENUS / JAVASCRIPT / PHP / D... par Heirem
Source avec Zip Source avec une capture JUKEBOX EN LIGNE par Flachy Joe

 Sources en rapport avec celle ci

AFFICHÉ SUR UN TABLEAU AVEC PAGINATION ET BASE DE DONNÉES par stormxp
Source avec Zip Source avec une capture PAGINATION + FICHIER CSS par profdi
Source avec Zip Source avec une capture ORGANIGRAMME PHP DYNAMIQUE par megatom
Source avec Zip APPLICATION E-COMMERCE par lassadf
Source avec Zip Source avec une capture VISUALISEUR DE SOURCES par Zart

Commentaires et avis

Commentaire de EricLeGrand77 le 06/06/2006 00:03:17

Ton code source ne fonctionne pas en faisant un copier-coller sur Firefox 1.5. Peux-tu vérifier que c'est la bonne version ?

Commentaire de ramzy le 07/06/2006 09:04:45

Le code semble fontionner sous Firefox 1.5 en faisant un copier/coller. Je rajoute un fichier zip pour que tu testes à partir du fichier d'exemple.

N'hésite pas à me contacter en cas de problème.

Commentaire de EricLeGrand77 le 07/06/2006 22:26:34

Bonjour Ramzy c'est Eric (lol)

J'ai 3 notice en ligne 315 (Notice: Undefined index: submit ) 343 (Notice: Undefined index: test1) et 345 (Notice: Undefined index: test2). Pas grave en soit. Par contre après avoir sélectioner des 2 items dans la liste 1 et un dans la liste 2 (et quleques soit les autres cas aussi) j'ai le message suivant :
Forbidden
You don't have permission to access /<br /><b>Notice</b>: Undefined variable: PHP_SELF in <b>e:\program files\easyphp1-8\www\check_select.php</b> on line <b>341</b><br /> on this server.

NB : J'ai PHP easy php 1.8 avec la version PHP est le 4.3.10

Commentaire de ramzy le 08/06/2006 08:52:17

A mon avis il faut changer $PHP_SELF par $_SERVER['PHP_SELF'], sinon pour les autres essai $HTTP_POST_VARS à la place de $_POST.

Commentaire de youspim le 15/06/2006 21:42:28

Salut Ramzy,

Merci pour ce code !

Pour le petit soucis que decrit EricLeGrand, je l'ai eu aussi mais le l'ai corrigé en utilisant la fonction isSet.

Voici les lignes que j'ai modifié :
** ligne 315 :
    avant -->     if($_POST["submit"]) {            
    apres -->     if(isSet($_POST["submit"])) {            

** ligne 343 :
    avant -->     <?php echo checkedSelect($nom, $structure, $contenu, $_POST[$nom]); ?>
            
    apres -->     <?php
                    if (isSet($_POST[$nom])) { echo checkedSelect($nom, $structure, $contenu, $_POST[$nom]); }
                    else { echo checkedSelect($nom, $structure, $contenu, ""); }
                  ?>        

** ligne 345 :
    avant -->     <?php echo checkedSelect($nom2, $structure2, $contenu2, $_POST[$nom2]); ?>
    apres -->     <?php
                    if (isSet($_POST[$nom2])) { echo checkedSelect($nom2, $structure2, $contenu2, $_POST[$nom2]); }
                    else { echo checkedSelect($nom2, $structure2, $contenu2, ""); }
                  ?>

A+

Commentaire de bj33 le 17/06/2006 14:07:05

salut

ce code comporte trop d'erreur pour être noté 10.avec une doctype strict, tout çà ce n'est pas correct :

<title>Test d'un select</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

le titre, toujours après les métas.

<style type="text/css">
body {
    background-color : #EEEEEE;
    
}

en strict, ce n'est pas valide.dans un cdata ou un fichier externe.

onClick, onMouseOut...etc : idem, en strict, les majuscules ne sont pas autorisées.

çà c'est une belle erreur :

<fieldset>
<legend>Test de selection</legend>
<form name="form_select" method="post" action="<?php echo $PHP_SELF; ?>">

c'est le contraire, <form name="form_select" method="post" action="<?php echo $PHP_SELF; ?>"><fieldset><legend>Test de selection</legend>

c'est mieux.

<?php echo $_SERVER['PHP_SELF'] ?>, comme çà c'est mieux.

en strict, çà aussi c'est interdit

<td width="20" align="center">, <div align="center" > à coder dans le css.

et çà aussi : language="javascript", ce n'est pas valide.là aussi, le script dans un cdata ou externe.

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">, il manque le slash.

padding : 4px 4px 4px 4px;
padding : 0px 4px 0px 4px;
padding: 0px 6px 0px 6px;

plutôt comme çà : padding : 4px; padding : 0 4px; padding: 0 6px

et une dernière, pour la route, </b><br>

<cite>$HTTP_POST_VARS à la place de $_POST

font: 11px Tahoma; attention aux propriétés par défaut...

à moins d'avoir une machine qui date du premier choc pétrolier, c'est non.

Commentaire de bj33 le 17/06/2006 14:14:30

erreur js

test for equality (==) mistyped as assignment (=)?
Fichier source : http://localhost/testcheckbox.php
Ligne : 143, Colonne : 32
Code source : if(provenance = "td") ck.checked = !ck.checked;

Commentaire de ramzy le 19/06/2006 09:00:21

Oups !

désolé pour toutes c'est jolies petites fautes !

je mettrais à jour le code ainsi que le zip !

Merci encore pour les critiques ...

Commentaire de maydaybigfoot le 28/08/2006 16:18:46

joli code et très utile.

Merci ^_^

Commentaire de Epoc22 le 22/02/2007 16:54:01

ramzi regarde ceci tu va être dégouté : http://webfx.eae.net/dhtml/collist/demo.html
Tu peut même déplacer les colonnes dynamiquement ! Comme dans Windows !

Commentaire de Sonic55 le 19/10/2009 22:11:30

Bonjour,

Je sais que se topic date, mais je n'aimerais polluer le forum en en créant un autre.

Bref, j'utilise le code suivant pour un projet d'étude que je dois réalisé. Le souci est que j'aimerais appeler, dans une autre page, un tableau qui contient seulement les valeurs des checkbox qui ont été 'checked', mais je ne sais pas comment m'y prendre...

la seule chose dont je suis au courant est qu'il faut que j'utilise le nom de la checkbox.

J'éspère que vous pourrez m'aider

Merci d'avance

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

css et php [ par deer ] bonjour,mon probleme est le suivant.j'affiche une serie d'occurences (depuis une base sql) sur lequelles on peut cliquer pour telecharger un document aide hebergeur [ par mohamed6 ] voila je voudrais savoir ce qu'il faut mettre à la place $dbroot$dbunser$dbpass$url$cheminpour $dbpass je suppose que c'est le mot de passe et le rest Checkbox de flash en php [ par jmade ] Bonjour,J'ai récupérer un fichier flash pour me renvoyer des données texte sur un php que j'ai aussi récupérer.Tout est ok sauf pour les checkbox, que php checkbox [ par matmar49 ] Voilà, j'ai plusieurs checkbox (générées à partir d'une base de données). J'aimerais que l'utilisateur puisse ne cocher une seule case c'est à dire qu Checkbox : PHP + Javascript [ par charlotte208 ] Bonjour,J'ai un petit soucis de compatibilité entre ces deux langages.En effet, j'ai des checkbox dans une première page et j'utilise la technique du Je recup pas mes variables d'1 FORM avec php ??? [ par doyen ] Salut à tous , Voila , je fais un test pour recup des variables passées dns un formulaire et je veux les afficher dans une page en php , pour poursuiv récuperer les valeurs d'un select de formulaire [ par babyscorpyon ] Bonjour tout le monde!!Voila, je suis une debutante en php et je n'arrive pas à trouver de solution à mon problème.j'ai un formulaire tout simple :&lt php et css [ par nezdeboeuf62 ] bonjour les ami(e)s!!!!Juste une petite question rapide. Peut generer des css avec du php???(c juste pour eviter que je perde mon tps a essayer de tro Comment utiliser les styles css [ par Roc ] Bonjour à tous je commence tout doucement à utiliser php. Un ami m'a conseillé d'utiliser les styles php. En fait c'est pour avoir la meême présentati Checkbox [ par GreatTata ] Bonjour,Voila j'ai un petit problème en php. J'ai une base de donnée avec des images. J'affiche mes images correctement et je voudrais récupérer l'ide


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales