Affichage de formulaire

ladj59 Messages postés 322 Statut Membre -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,

je crée 2formulaires mais ils s'affichent tout le temps l'un a coté de l'autre je n'arrive pas a les mettre l'un en dessous de l'autre...en + il n'y a que recherche par mots clé qui s'affichent quand je coche motscle et sujet(c'est une checkbox) et par recherche par mots clé et recherche par sujet
Comment faire svp??

merci d'avance

<code type="php">
if($_POST['motscle']==on)
{
?>
<p>
Recherche par mots_clé:
</p>
<?php

$tab=array();

$cle=mysql_query("SELECT DISTINCT motscle FROM base_physique ORDER BY motscle ");

while($motscle = mysql_fetch_array($cle)) #propose tous les sujets présents dans la base de donnée
{
$data2=explode(",",$motscle['motscle']);
foreach($data2 as $unmots)
{
if(!in_array($unmots, $tab))
{
$tab[] = $unmots;
}
}
}

natcasesort($tab);

?>

<form id="formulaire" method="post" action="bb4.php">
<select name="motscle" id="motscle">

<?php

echo '<table>';
foreach($tab as $ligne2)
{
echo '<option value="' . $ligne2. '">' . $ligne2 . '</option>';
//echo '<tr><td>',$ligne,'</td></tr>';
}
echo '</table>';
?>

<?php
}
if($_POST['sujet']==on)
{
?>
Recherche par sujet :

<?php

$tableau=array();

$sujets=mysql_query("SELECT DISTINCT sujet FROM base_physique ORDER BY sujet ");

while($sujet = mysql_fetch_array($sujets)) #propose tous les sujets présents dans la base de donnée
{
$data=explode(",",$sujet['sujet']);
foreach($data as $unsujet)
{
if(!in_array($unsujet, $tableau))
{
$tableau[] = $unsujet;
}
}
}

natcasesort($tableau);

?>

<form id="formulaire" method="post" action="bb4.php">
<select name="sujet" id="sujet">

<?php

echo '<table>';
foreach($tableau as $ligne)
{
echo '<option value="' . $ligne. '">' . $ligne . '</option>';
//echo '<tr><td>',$ligne,'</td></tr>';
}
echo '</table>';

?>

</code>

1 réponse

ScroudaF Messages postés 131 Statut Membre 11
 
Bon alors là je ne suis pas du tout sûr, mais dans les boucles while, la condition doit peut-être être testée par un double = :
while($motscle = mysql_fetch_array($cle))
à remplacer par
while($motscle == mysql_fetch_array($cle))

Ensuite je n'ai pas vraiment compris, les deux tableaux (html, <table>) doivent être l'un en dessous de l'autre?
un <p> entre les deux ça ne fonctionne pas?
Sinon utiliser des div ...
0
Alain_42 Messages postés 5413 Statut Membre 894
 
Non ScroudaF dans une boucle while il ne faut PAS les deux ==

Ladj59, il me semble t'avoir conseillé dans un prédedent post de ne pas mettre de balise <table par echo "<table> entre les balises <select

alors si tu ne suis pas nos conseils ???

@lain
0