faire afficher dans Tableau

Petit nouveau ! | 1 Messages

24 juil. 2009, 17:45

bonjour, je cherche à résoudre un exercice qui parait pourtant simple lol
je dois faire afficher un tableau avec une ligne d'en-tête (Nom, Prénom, Âge) et à côté des boutons du type checkbox pour identifier si c'est un mec ou une meuf et si la personne est majeure ou pas. Les infos (nom,prénom,âge) sont prises à partir d'une source externe en format texte et à faire afficher dans le tableau.
Dans le fichier texte, les informations sont séparées par ";" du style :
toto;tata;12;
julien;dubois;45;
etc...
le but est de faire afficher les infos du fichier texte dans la table, et faire cocher les checkbox selon les cas
bref j'arrive pas à bien formuler les conditions et je n'y connais pas grand chose.
pour le moment je n'ai obtenu que ceci avec ce bout de code :

Image
<html>
    <head>
	<title>Ex 13</title> 
    </head>
    <body>
	<form>
        <table border="1">
          
            <tr>
               <th>Prénom</th>
			   <th>Nom</th> 
			   <th>Âge</th>
			   <th>Garçon</th>
			    <th>Fille</th>
				 <th>Majeur</th>
			 </tr>
			  
			    <?php     
			        $info = file("info.txt");
                                //if (isset($_POST['M']) == true && isset($_POST['V']) == true) { };
			        foreach($info as $detail) {
			           $element = split(';', $detail);
				        echo '<tr>';
				        echo '<td>' .$element[0] . '</td>';
				        echo '<td>' .$element[1] . '</td>';
				        echo '<td>' .$element[2] . '</td>';
				        echo '<td>' . '<input type="checkbox" checked="checked" name="M"  />' . '</td>';
				        echo '<td>' . '<input type="checkbox" checked="" name="W"  />' . '</td>';
				        echo '<td>' . '<input type="checkbox" checked="checked" name="V"  />' . '</td>';
				        echo '</tr>';
				  
				     }
			    ?>
		</table>
	</form>
	</body>
</html>

Eléphant du PHP | 453 Messages

24 juil. 2009, 18:27

Salut,

Dans le cas d'un prénom unisexe, comment détermines tu s'il est garçon ou fille (Claude, Pascale, etc.) ?

Pour ton soucis, je le verrai comme ceci :
//...
//code en amont
foreach($info as $detail) {
        $element = split(';', $detail);
        $ligne = '<tr>';
        $ligne .= '<td>' .$element[0] . '</td>';
        $ligne .= '<td>' .$element[1] . '</td>';
        $ligne .=  '<td>' .$element[2] . '</td>';
        
        $majeur = ($element[2] >= 18)? 'checked="checked"' : '' ;
        
        $ligne .= '<td><input type="checkbox" checked="checked" name="M"  /></td>';
        $ligne .= '<td><input type="checkbox" checked="" name="W"  /></td>';
        $ligne .= '<td><input type="checkbox" '.$majeur.' name="V"  /></td>';
        $ligne .= '</tr>';
        echo $ligne;
} 

//...
//la suite
(fait de tête)

++
La Tux attitude avec les kiw'z syou plait
Komodo Edit - Inkscape - Dia