Posez votre question Signaler

Tableau html [Résolu]

Adrix08 126Messages postés 3 juin 2008Date d'inscription - Dernière réponse le 11 juin 2008 à 13:19
Bonjour,
est il possible faire une boucle en html afin de crée des colonne dans un tableau...car g besoin de 48 colonne et c'est trés galere de les remplir toutes une par une donc si quelqu'un pouvait me renseigner....merci
Lire la suite 

Tableau html »

14 réponses
Réponse
+1
moins plus
sa marche merci bcp php :) :) :) :)
Ajouter un commentaire
Réponse
-1
moins plus
Bjr

Tu peux le faire en PHP ou en Javascript

Mais tes colonnes tu y mets quoi dedans ?
Adrix08 - 10 juin 2008 à 14:25
je ve i metre d chekbox
Ajouter un commentaire
Réponse
-1
moins plus
Oui ok mais tu veux coder en Javascript ou en PHP ?
Adrix08 - 11 juin 2008 à 08:02
je veux cocher les case, chaque case symbolise 15minute, il faudrait que j'arrive a compter le nombre de case a cocher me permetan d'afficher le nombre total de minute passer.
Adrix08 - 11 juin 2008 à 08:02
je veux cocher les case, chaque case symbolise 15minute, il faudrait que j'arrive a compter le nombre de case a cocher me permetan d'afficher le nombre total de minute passer.
Ajouter un commentaire
Réponse
-1
moins plus
bjr

Comme tu ne dis tjrs pas si tu utilises PHP ou pas voici un ex en Javascript

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
	  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html  xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<style>
*
{
	font-family : arial;
	font-size : 10pt;
}

td
{
	padding-left : 2px;
	padding-right : 2px;
}

pre
{
	margin : 0px;
	padding : 1px;
}

.rowA
{
	background-color : #F0F0FF;
	width: 50px;
	white-space: nowrap;
}

.rowB
{
	background-color : #F9F9F9;
	width: 50px;
	white-space: nowrap;
}

input
{
	display : inline;
}
</style>

<script type="text/javascript">
<!--
	// Objet pour construire et manipuler les grilles (table HTML) avec DOM
	function Grid()
	{		
		this.colCount = 0;
		this.rowCount = 0;	
		this.table = null;
		this.tableBody = null;
		this.tableId = "";
	}

	// Efface la ligne spécifiée par rowIndex
	Grid.prototype.deleteRow = function(rowIndex)
	{
		if (rowIndex < this.rowCount)
		{
			// recherche la ligne de tableau
			var row = this.tableBody.getElementsByTagName("tr")[rowIndex];	
        	
			// Supprime la ligne
			this.tableBody.removeChild(row);
			this.rowCount--;
		}	
	}
	
	// Ajoute une ligne à la position rowIndex dans la table HTML
	Grid.prototype.createRow = function(rowIndex)
	{
		var row = document.createElement("tr");		
	
		for(var colIndex = 0; colIndex < this.colCount; colIndex++) 
		{
			// Crée un élément <td> 
			var cell = document.createElement("td");
			cell.className=this.getCellClass(rowIndex,colIndex);
			// Demande au DataProvider de fournir le contenu à afficher dans la cellule
			cell.innerHTML = this.getCellData(rowIndex,colIndex);
			row.appendChild(cell);
		}
					
		if (rowIndex == this.rowCount)
		{
			// ajoute la ligne à la fin du corps du tableau
			this.tableBody.appendChild(row);
		}
		else
		{	
			// recherche la ligne de tableau
			var rowNode = this.tableBody.getElementsByTagName("tr")[rowIndex];					
			this.tableBody.insertBefore(row,rowNode);
		}
		this.rowCount++;	
	}	
	
	// Ajouter une ligne à la fin
	Grid.prototype.addRow = function()
	{
		this.createRow(this.rowCount);
	}	
	
	// Insère à la position rowIndex
	Grid.prototype.insertRow = function(rowIndex)
	{
		this.createRow(rowIndex);
	}		
	
	// Création dynamique des lignes dans la table et chargement de chaque cellule
	Grid.prototype.setRowCount = function(rowCount)
	{
		if (rowCount > this.rowCount)
		{	
			var startRowIndex = this.rowCount;
			for( var rowIndex = startRowIndex; rowIndex < rowCount; rowIndex++) 
			{
				this.createRow(rowIndex);
			}
		}
	}	
		
	// retourne l'élément TD html corrrepondant à la cellule qui se trouve en [rowIndex,colIndex]
	Grid.prototype.getCell = function(rowIndex,colIndex)
	{		
		var row = this.tableBody.getElementsByTagName("tr")[rowIndex];
		return row.getElementsByTagName("td")[colIndex];
	}

	// Initialise la grille puis la charge en demandant au dataProvider de fournir le contenu de chaque cellule
	Grid.prototype.init = function(tableId,rowCount,colCount)
	{	
		this.tableId = tableId;
		this.table = document.getElementById(tableId);	
		this.colCount = colCount;

		this.tableBody = document.createElement("tbody");
		// place <tbody> dans l'élément <table>	
		this.table.appendChild(this.tableBody);
		this.setRowCount(rowCount);	
	}
	
	Grid.prototype.getCellData = function(rowIndex, colIndex)
	{	
		if (typeof(this.onGetCellData) == "function") 
		{
			return this.onGetCellData(rowIndex, colIndex);
		}
		else
		{
			return "&nbsp;";
		}
	}

	Grid.prototype.getCellClass = function(rowIndex, colIndex)
	{	
		if (typeof(this.onGetCellClass) == "function") 
		{
			return this.onGetCellClass(rowIndex, colIndex);
		}
		else
		{
			return "";
		}
	}	
// -->
</script>


<script type="text/javascript">
<!--	

// création d 'un objet de type Grid (en fait une table HTML)	
var grille=new Grid();

// Gestionnaires d'événements
// Lorsque la grille demande le contenu de la cellule
grille.onGetCellData =function(rowIndex, colIndex)
{
	var id="cb_"+rowIndex+"_"+colIndex;
	return colIndex+'<input type="checkbox" id="'+id+'" onclick="grille.onClickCheckbox(\''+rowIndex+'\',\''+colIndex+'\')">';
}

// Lorsque la grille demande le style css a utilisé pour la cellule
grille.onGetCellClass =function(rowIndex, colIndex)
{
	return (rowIndex % 2) ? "rowA" : "rowB";
}

grille.onClickCheckbox = function(rowIndex, colIndex)
{
	var cb = document.getElementById("cb_"+rowIndex+"_"+colIndex);
	var input_total = document.getElementById("total");
	
	var total = 0;
	total = parseInt(input_total.value);
	if (isNaN(total))
	{
		total = 0;
	}
	
	if (cb.checked)
	{ 
		total = total + 15;
	}
	else
	{
		total = total - 15;	
	}
	input_total.value =  total;
} 

function go()
{
	// Initialise la grille 
	grille.init('ma_grille',1,48);	
}
// -->
</script>

</head>
<body onload="go()">
<form>
<div><table id="ma_grille" border="1" cellspacing="0"></table></div>
<br />
Total <input type="text" id="total">
</form>
</body>
</html
>
Ajouter un commentaire
Réponse
-1
moins plus
si sii j'utilise php....par contre la je ne compren pas tro ton script :s je v te montrer le mien tu me dira ske ten pens...

voici le script de ma page html avec mon tableau et ms checkbox :

<html>
<head>
<title>Untitled</title>

</head>

<body bgcolor="darksalmon">
<form name="form1" method="post" action="compteur.php">
<center><table border="2">
<?php
$nbJoursMois = date('t');

$jour = date('d');
$mois = date('m');
$annee = date('Y');
?>
<tr>
<td><b>Date/Heure</b></td>
<td COLSPAN=4><b>8h</b></td>
<td COLSPAN=4><b>9h</b></td>
<td COLSPAN=4><b>10h</b></td>
<td COLSPAN=4><b>11h</b></td>
<td COLSPAN=4><b>12h</b></td>
<td COLSPAN=4><b>13h</b></td>
<td COLSPAN=4><b>14h</b></td>
<td COLSPAN=4><b>15h</b></td>
<td COLSPAN=4><b>16h</b></td>
<td COLSPAN=4><b>17h</b></td>
<td COLSPAN=4><b>18h15</b></td>
<td COLSPAN=4><b>Compteur</b></td>
</tr>
<?php
for( $jour = 1; $jour < $nbJoursMois+1; $jour++)
{ // Là on s'occupe de la 1ère ligne du cycle de 3
echo ' <tr>
<td><b>'.$jour.'/'.$mois.'/'.$annee.'</b></td> '; // On affiche la date
echo ' </tr> ';
echo '
<tr>
<td><b>Agnes</b></td> '; // On affiche le prénom
for($i = 0; $i<=43; $i++)
{
echo '<td><input type="checkbox" name="presente1" value=1/></td>'; // + les 11 checkbox pour arriver jusqu'au compteur
}
echo ' <td><input type="submit" name="envoyer" value="envoyer"></td> '; // Tu remplace aAa par ce que tu souhaite afficher :)
echo ' </tr> ';
echo ' <tr>
<td><b>Brigitte</b></td> '; // On affiche le prénom
for($i = 0; $i<=43; $i++)
{
echo '<td><input type="checkbox" name="presente2" value=1/></td>'; // + les 11 checkboxes pour arriver jusqu'au compteur
}
echo ' <td><input type="submit" name="envoyer" value="envoyer"></td> '; // Tu remplace aAa par ce que tu souhaite afficher :)
echo ' </tr> ';
}
?>

</table></center></form>
</body>
</html>

maintenant jessaye de trouver un script qui me permetrai de trouver le nombre de case cocher...
Ajouter un commentaire
Réponse
-1
moins plus
Ha ben fallait commencer par là ! T'Oh !


Quand tu postes ta page (bouton Envoyer) tu veux récupérer toutes les cases pour tout le planning dans ta page compteur.php ? c'est bien ca ?
Adrix08 - 11 juin 2008 à 11:41
wai jveux savoir le nombre de case qui ont été coché
Ajouter un commentaire
Réponse
-1
moins plus
Est-ce que tu veux compter le nbr de cases cochées pour chaque ligne pour chaque utilisateur pour chaque jour ?
Adrix08 - 11 juin 2008 à 11:54
en fait pour chaque jour elle doivent faire un nombre dheure donc elle coche les case pour dire quelles sont presente. donc je pens que c pour chaque jour.
Ajouter un commentaire
Réponse
-1
moins plus
Oky docky

Alors essai :



<html> 
<head> 
<title>Untitled</title> 

</head> 

<body bgcolor="darksalmon"> 
<form name="form1" method="post" action="compteur.php"> 
<center><table border="2"> 
<?php 
$nbJoursMois = date('t'); 

$jour = date('d'); 
$mois = date('m'); 
$annee = date('Y'); 


$users=array();
$users[]="Agnes";
$users[]="Brigitte";
?> 
<tr> 
<td><b>Date/Heure</b></td> 
<td COLSPAN=4><b>8h</b></td> 
<td COLSPAN=4><b>9h</b></td> 
<td COLSPAN=4><b>10h</b></td> 
<td COLSPAN=4><b>11h</b></td> 
<td COLSPAN=4><b>12h</b></td> 
<td COLSPAN=4><b>13h</b></td> 
<td COLSPAN=4><b>14h</b></td> 
<td COLSPAN=4><b>15h</b></td> 
<td COLSPAN=4><b>16h</b></td> 
<td COLSPAN=4><b>17h</b></td> 
<td COLSPAN=4><b>18h15</b></td> 
<td><b>Compteur</b></td> 
</tr> 
<?php
for( $jour = 1; $jour < $nbJoursMois+1; $jour++) 
{ // Là on s'occupe de la 1ère ligne du cycle de 3 
    $datejour=sprintf("%02s/%02s/%02s",$jour,$mois,$annee); // On affiche la date 
	printf('<tr><td><b>%s</b></td></tr>',$datejour); // On affiche la date 
	for ($u=0; $u < count($users); $u++)
	{
		printf("<tr><td><b>%s</b></td>\n",$users[$u]); // On affiche le prénom 
		for($i = 0; $i<=43; $i++) 
		{ 
			$id="users[".$users[$u]."][".$datejour."][".$i."]";
			printf("<td><input type=\"checkbox\" id=\"%s\" name=\"%s\"></td>\n",$id,$id); // + les 11 checkbox pour arriver jusqu'au compteur 
		} 
		echo "<td><input type=\"submit\" name=\"envoyer\" value=\"envoyer\"></td>\n"; // Tu remplace aAa par ce que tu souhaite afficher :) 
		echo "</tr>\n"; 
	}	
} 
?> 
</table></center></form> 
</body> 
</html>



compteur.php

<?php 
if (isset($_POST["users"]))
{
	echo "<table border=\"1\">\n";
	$users=$_POST["users"];
	foreach ($users as $user=>$dates)
	{
		foreach ($dates as $jour=>$pointages)
		{	
			echo "<tr>\n";
			printf("<td>%s</td>\n",$user);
			printf("<td>%s</td>\n",$jour);
			printf("<td>%s minute(s)</td>\n",count($pointages)*15);		
			echo "</tr>\n";
		}
	}	
	echo "</table>\n";
}	
?>



La page compteur.php est ultra basique : à toi d'adapter--

PhP  
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
Adrix08 - 11 juin 2008 à 13:14
merci php ms ya une erreur a la ligne 48 avk le < et >
Ajouter un commentaire
Ce document intitulé « tableau html » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook