[PHP] Aligner bouton radio dans une colonne ?

petit_blanc Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
 petit_blanc -
Bonjour,

Je voudrais savoir comment je pourrais faire pour aligner les boutons radios dans ma dernière colonne 'choix'

Car en faite dans ma colonne qui la précède 'article' j'ai un colspan = '5' car j'ai 5 choix "entrée,menu,dessert,boisson,fromage".

Mais le problème c'est que lorsque je remplis pas un de ces 5 champs, bah mon bouton radio va donc remplacer ces cases vides et donc se retrouver sous la colonne 'article'.

Merci d'avance,

A voir également:

2 réponses

mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   1 340
 
Bonjour,

Il eut été judicieux de mettre le ch'tit bout de code en question.
0
petit_blanc Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
echo "<td colspan ='5'>";
echo "<b>";
echo "<center>Article</center>";
echo "</b>";
echo "</td>";
echo "<td>";
echo "<b>";
echo "<center>Choix</center>";
echo "</b>";
echo "</td>";
echo "</tr>";
echo "</center>";
while (($donnees = mysql_fetch_array($reponse))!==false):




echo "<td style='". $couleur ."'>";
echo "<center>";
$mysql -> Nommer($article['ID_produit']);
echo "</center>";
echo "</td>";
endwhile;
$i = '0';
for($i = '0'; $i == $dif; $i++):
echo "<td>XxX</td>";
endfor;



echo "<td>";
$id = $donnees['ID_commande']; // cette variable doit aller sous 'Choix' //
echo "<center><input type='radio' name='choix' value='". $id ."' /></center>";
echo "</td>";
echo "</tr>";
0
mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   1 340
 
Bonjour,

...pfiou.... C'est un peu, hummmmm, brouillon....

1) NE PLUS UTUILISER CENTER, JAMAIS,!!!! On remplace par la déclaration de style qui va bien, exemple:

<td style="text-align: center;">

CENTER est déprécié en HTML5. Google Chrome fait d'ailleurs une réécriture du code HTML pour lui substituer le style correspondant.

2) j'ai réécrit votre portion de code un peu plus correctement:

<tr>
    <td colspan ='5' style="text-align: center; font-weight: bold;">Article</td>
    <td style="text-align: center; font-weight: bold;">Choix</td>
</tr>
<tr>
<?php while (($donnees = mysql_fetch_array($reponse)) !== false): ?>
        <td style='text-align: center; color:<?php echo $couleur; ?>'>
            <?php $mysql->Nommer($article['ID_produit']); ?>
        </td>
    <?php endwhile; ?>
    <?php $i = '0';
    for ($i = '0'; $i == $dif; $i++): ?>
        <td>XxX</td>
    <?php endfor; ?>
    <td style="text-align: center;">
        <input type='radio' name='choix' value='<?php echo $donnees['ID_commande']; ?>'/>
    </td>
</tr>



Je pense que vous avez un problème d'imbrication au niveau des TR dans votre boucle WHILE.

Pour les boutons-radio, la portion ed code en question:

   <td style="text-align: center;">
        <input type='radio' name='choix' value='<?php echo $donnees['ID_commande']; ?>'/>
   </td>


Notez que PHP est utilisé ici comme le préconisent les pros en PHP/HTML (dixit conférence PHP de Paris 2010 - Paris La Vilette)... c'est à dire plutôt comme un moteur de template (ce qu'à déclaré Rasmus Lerdorf himself lors de cette conférence). Rasmus LERDORF est le créateur de PHP.

A+
0
petit_blanc Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
[URL=http://www.hostingpics.net/viewer.php?id=973829test.jpg][IMG]http://img4.hostingpics.net/pics/973829test.jpg[/IMG][/URL]
0
petit_blanc Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Enorme merci pour les conseils des balises <center> et du fonctionnement du PHP mais j'ai fait tout mon projet ainsi :( il me prendrait trop de temps de le recommencer, ça me servira pour le futur.

Hélas mon problème persiste encore.... :(

Voila mon code complet



<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="stylegestion.css" />
<title></title>
</head>
<body>
<div id="en-tete"></div>
<div id="sidebar"></div>
<div id="content">


<?php
include("/mysql.php");
include("/colorie.php");
$mysql = new mysql( "localhost", "gestionresto", "root", "");
$mysql ->connect();
mysql_query("SET NAMES UTF8");
$rqt = "SELECT * FROM commande_resto";
$reponse = $mysql -> queryreturn($rqt);

echo "<center>";
echo "<table border = 'true'>";
echo "<form method='POST' action='gerer_etat2.php'>";
echo "<tr>";
echo "<td>";
echo "<b>";
echo "<center>Reference Commande</center>";
echo "</b>";
echo "</td>";
echo "<td>";
echo "<b>";
echo "<center>Date de la Commande</center>";
echo "</b>";
echo "</td>";
echo "<td colspan ='5'>";
echo "<b>";
echo "<center>Article</center>";
echo "</b>";
echo "</td>";
echo "<td>";
echo "<b>";
echo "<center>Choix</center>";
echo "</b>";
echo "</td>";
echo "</tr>";
echo "</center>";
while (($donnees = mysql_fetch_array($reponse))!==false):
echo "<tr>";


echo "<td>";
echo "<center>";
echo $donnees['ID_commande'];
echo "</center>";
echo "</td>";


echo "<td>";
echo "<center>";
echo $donnees['date_commande'];
echo "</center>";
echo "</td>";


$plat = "SELECT * FROM achat_resto WHERE ID_commande='". $donnees['ID_commande'] ."'";
$tmp = $mysql -> queryreturn($plat);
$nbplat = "SELECT COUNT(*) FROM achat_resto WHERE ID_commande='". $donnees['ID_commande'] ."'";
$nb = $mysql -> queryreturn($nbplat);
$nbr = mysql_fetch_array($nb);
$dif = 5 - $nbr[0];
while (($article = mysql_fetch_array($tmp))!==false):

$couleur = Coloriser($article['etat_com']);

echo "<td style='". $couleur ."'>";
echo "<center>";
$mysql -> Nommer($article['ID_produit']);
echo "</center>";
echo "</td>";
endwhile;
$i = '0';
for($i = '0'; $i == $dif; $i++):
echo "<td>XxX</td>";
endfor;


echo "<td>";
$id = $donnees['ID_commande'];
echo "<center><input type='radio' name='choix' value='". $id ."' /></center>";
echo "</td>";
echo "</tr>";

endwhile;
echo "</table>";
echo "<br>";
echo "<input type='submit' value='Definir Etats'>";
echo "</form>";



$mysql ->disconnect();

?>
</div>
</body>
</html>
0
mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   1 340
 
bonjour,

Commencez par structurer correctement votre code HTML. Je vous aai dit de supprimer DEFINITIVEMENT les CENTER.

Ensuite, FORM doit être en dehors de TABLE

Prenez exemple sur mon modèle de code, et testez au fur et à mesure...

ATtention, les strcutures en php:
- structure { } si tout code php
- structure: endstructure; si php utilisé en template

Exemple:

code full-php:
  if($test) {
      mon code php
  }


code HTML avec PHP en "moteur" de template:
  <?php if($test): ?>
     ... mon code HTML ....
  <?php endif; ?>


Essayez avant de me relancer, merci.

A+
0
mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   1 340
 
un mot sur votre copie écran: et si vous mettiez la colonne avec les boutons-radio en début de ligne (première colonne)...?

Et puis, ne serait-il pas plus judicieux de mettre des case à cocher?

input type="checkbox"....


A+
0