Boite <select> RESOLU

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Boite <select> RESOLU

Re: Boite <select>

par manureva2b » 17 nov. 2011, 08:50

Je ne vois pas de <table> </table>, uniquement un <table> ouvert.
Les tableaux doivent s'ouvrir et se fermer...
Bonjour,

Autant pour moi il moi il manque deux ligne dans mon code (oublié de les sélectionner/coller)

Code : Tout sélectionner

</tr> </table>

Re: Boite <select>

par Aureusms » 17 nov. 2011, 00:37

Je ne vois pas de <table> </table>, uniquement un <table> ouvert.
Les tableaux doivent s'ouvrir et se fermer...

Re: Boite <select>

par manureva2b » 16 nov. 2011, 19:36

Re bonsoir c'est encore moi ;)

J'ai réussi à afficher toutes les données que je voulais .. yeah !!

mais par contre ça ressemble à rien, je m'explique:

j'ai mis les données dans un tableau mais certaines cellules sont toutes petites et d'autres 10 fois trop large au lieu de s'adapter; de plus je donne une largeur max à mon tableau mais celui ci s'agrandi de trop il fait 999 et je voudrais qu'il ne dépasse pas 790.

De plus les titres des colonnes ne s'affichent pas non plus.

Pouvez vous m'aider?

voici mon code:

Code : Tout sélectionner

$idSql = mysql_connect($host, $user, $passwd) or die('Erreur de connexion'); mysql_select_db($bdd) or die('Base inexistante'); $sql = 'SELECT DISTINCT ville FROM T_evenement'; $query = mysql_query($sql) or die( 'Erreur' ); $tabVille = array(); if (mysql_num_rows($query) != 0) { while ($list = mysql_fetch_assoc( $query )) { $tabVille[] = $list['ville']; } mysql_close($idSql); } //affichage if (!empty($tabVille)) { ?> <form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post"> <select name="ville" onChange="this.form.submit();"> <?php foreach ($tabVille as $ville) { echo "<option value='".$ville."'>".$ville."</option>"; } ?> </select> <input type="submit" name="valider" id="valider" value="Envoyer" /> </form> <?php } else { ?></td> <td width="191" height="2" bgcolor="#7DB85A"></td> <td width="20">&nbsp;</td> </tr> <tr> <td>&nbsp;</td> <td width="300" align="left" valign="top" bgcolor="#FFFFFF"> <table border="1" cellpadding="5" cellspacing="1" bgcolor="#8FEC77"> <th bgcolor="#009037" align="center" class="couleurjaune">Date </th> <th bgcolor="#009037" align="center" class="couleurjaune">Jour</th> <th bgcolor="#009037" align="center" class="couleurjaune">Nom du l'événement </th> <Th bgcolor="#009037" align="center" class="couleurjaune">Descriptif</Th> <Th bgcolor="#009037" align="center" class="couleurjaune">Adresse</Th> <Th bgcolor="#009037" align="center" class="couleurjaune">Code postal</Th> <Th bgcolor="#009037" align="center" class="couleurjaune">Ville</Th> <th bgcolor="#009037" align="center" class="couleurjaune">Heure </th> <th bgcolor="#009037" align="center" class="couleurjaune">Contact</th> </tr> <?php } if (!empty($_POST["ville"])) { $ville = mysql_escape_string($_POST["ville"]); $idSql = mysql_connect($host, $user, $passwd) or die('Erreur de connexion'); mysql_select_db($bdd) or die('Base inexistante'); $sql = "SELECT ville,DATE_FORMAT(date, '%d-%m-%Y') as datefr,jour,nom_event,descriptif,adresse,code_postal,heure,contact FROM T_evenement WHERE ville = '".$ville."'"; $query = mysql_query($sql) or die( 'Erreur' ); $result = mysql_query($query); // Recuperation des resultats while ( $list = mysql_fetch_array( $query )) { $Ville = $list[0]; $Datefr = $list[1]; $Jour = $list[2]; $Nom_event = $list[3]; $Descriptif = $list[4]; $Adresse = $list[5]; $Code_postal = $list[6]; $Heure = $list[7]; $Contact = $list[8]; echo "<tr>\n <td>$Datefr</td>\n <td>$Jour</td>\n <td>$Nom_event</a></td>\n <td>$Descriptif</td>\n <td>$Adresse</a></td>\n <td>$Code_postal</td>\n <td>$Ville</td>\n <td>$Heure</td>\n <td>$Contact</td>\n </tr>\n"; } // Deconnexion de la base de donnees mysql_close($idSql); } ?>
Par avance merci

Re: Boite <select>

par manureva2b » 16 nov. 2011, 15:41

la requete SQL c'est toi qui la fournit dans ton 1er message
oui je sais et je pense l'avoir compris.

comme je te dis dans mon message précédent je fais la demande pour qu'il y est plusieurs champs qui s'affiche.
$sql = "SELECT DATE_FORMAT(date, '%d-%m-%Y') as datefr,jour,nom_event,descriptif,adresse,code_postal,ville,heure,contact FROM T_evenement WHERE ville = '".$ville."'";
Peux tu au moins me dire si c'est la l'erreur ou si je dois absolument utiliser le var_dump ?

Merci pour le tuto

++

Re: Boite <select>

par moogli » 16 nov. 2011, 14:40

la requete SQL c'est toi qui la fournit dans ton 1er message, si tu ne la comprend pas je te conseil de lire les tuto sur SQL (et mysql).

c'est une base tu en aura besoin pour la suite.

si tu veux du plus parlant essai
while ( $list = mysql_fetch_array( $query )) 
 {
var_dump($list);
 }
et regarde ce que fait la fonction var_dump dans la doc ;)

@9

Re: Boite <select>

par manureva2b » 16 nov. 2011, 11:51

le tuto t'indique comment afficher ce qui viens de ta table.

étant donné que le code n'affiche que la date il fonctionne correctement.

lit bien le tuto et tu devrais comprendre comment afficher tout les champs.

@+
Je veux bien te croire mais pour moi il demande bien tous les champs qui m'interresse non ?
$sql = "SELECT DATE_FORMAT(date, '%d-%m-%Y') as datefr,jour,nom_event,descriptif,adresse,code_postal,ville,heure,contact FROM T_evenement WHERE ville = '".$ville."'";
Je suis entrain de relire le tuto.

Désolé je suis débutant.

Re: Boite <select>

par moogli » 16 nov. 2011, 11:47

le tuto t'indique comment afficher ce qui viens de ta table.

étant donné que le code n'affiche que la date il fonctionne correctement.

lit bien le tuto et tu devrais comprendre comment afficher tout les champs.

@+

Re: Boite <select>

par manureva2b » 16 nov. 2011, 11:41

Bonjour,

Merci beaucoup pour le lien je devrais m'en sortir avec ça, mais mon premier problème est que les données dans ma table ne s'affichent pas toutes hors dans le code elles sont bien demandées.

je travail désormais sur le code de Aureusms (voir le résultat sur cette page: http://www.lemanureva.fr/test.php )
<?php
$idSql = mysql_connect($host, $user, $passwd) or die('Erreur de connexion');
mysql_select_db($bdd) or die('Base inexistante');

$sql = 'SELECT DISTINCT ville FROM T_evenement';
$query = mysql_query($sql) or die( 'Erreur' );

$tabVille = array();
if (mysql_num_rows($query) != 0)
{
while ($list = mysql_fetch_assoc( $query ))
{
$tabVille[] = $list['ville'];
}
mysql_close($idSql);
}

//affichage
if (!empty($tabVille))
{
?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
<select name="ville" onChange="this.form.submit();">
<?php
foreach ($tabVille as $ville)
{
echo "<option value='".$ville."'>".$ville."</option>";
}
?>
</select>
<input type="submit" name="valider" id="valider" value="Envoyer" />
</form>
<?php
}
else
{
?>
<p>Aucune ville</p>
<?php
}

if (!empty($_POST["ville"]))
{
$ville = mysql_escape_string($_POST["ville"]);
$idSql = mysql_connect($host, $user, $passwd) or die('Erreur de connexion');
mysql_select_db($bdd) or die('Base inexistante');

$sql = "SELECT DATE_FORMAT(date, '%d-%m-%Y') as datefr,jour,nom_event,descriptif,adresse,code_postal,ville,heure,contact FROM T_evenement WHERE ville = '".$ville."'";
$query = mysql_query($sql) or die( 'Erreur' );
$result = mysql_query($query);

// Recuperation des resultats
while ( $list = mysql_fetch_array( $query ))
{
echo $list[0];
}

// Deconnexion de la base de donnees
mysql_close($idSql);
}
?>
@+

Re: Boite <select>

par moogli » 16 nov. 2011, 11:37

tu trouvera la solution dans ce tuto : Afficher les données de votre base


@+

Re: Boite <select>

par manureva2b » 16 nov. 2011, 10:29

Bonjour,

Merci pour le code, mais malheureusement il n'affiche que la date et pas le reste des informations.. :cry: et je ne vois pas pourquoi


voila ce que ça donne:

http://www.lemanureva.fr/test.php

Pouvez vous aussi m'aider à le mettre en page dans un tableau svp.

Merci

Re: Boite <select>

par laurents » 16 nov. 2011, 01:07

C'est pas onClick mais OnChange car tu as un <select>
Oui, tu as raison ; ce n'était qu'un vague souvenir...

Re: Boite <select>

par Aureusms » 16 nov. 2011, 00:54

C'est pas onClick mais OnChange car tu as un <select>

Sinon j'ai (un peu) corrigé le code mais je n'ai pas pu le tester. Il reste peut être des erreurs.
<?php
$idSql = mysql_connect($host, $user, $passwd) or die('Erreur de connexion');
mysql_select_db($bdd) or die('Base inexistante');

$sql = 'SELECT DISTINCT ville FROM T_evenement';
$query = mysql_query($sql) or die( 'Erreur' );

$tabVille = array();
if (mysql_num_rows($query) != 0)
{
	while ($list = mysql_fetch_assoc( $query )) 
	{
		$tabVille[] = $list['ville']; 
	}
	mysql_close($idSql);
}

//affichage
if (!empty($tabVille))
{
	?>
	<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
		<select name="ville" onChange="this.form.submit();">
			<?php
			foreach ($tabVille as $ville)
			{
				echo "<option value='".$ville."'>".$ville."</option>"; 
			}
			?>
		</select>
		<input type="submit" name="valider" id="valider" value="Envoyer" />
	</form>
	<?php
}
else
{
	?>
	<p>Aucune ville</p>
	<?php
}

if (!empty($_POST["ville"]))
{
	$ville = mysql_escape_string($_POST["ville"]);
	$idSql =  mysql_connect($host, $user, $passwd) or die('Erreur de connexion');
	mysql_select_db($bdd) or die('Base inexistante');

	$sql = "SELECT DATE_FORMAT(date, '%d-%m-%Y') as datefr,jour,nom_event,descriptif,adresse,code_postal,ville,heure,contact FROM T_evenement WHERE ville = '".$ville."'";
	$query = mysql_query($sql) or die( 'Erreur' );
	$result = mysql_query($query);

	// Recuperation des resultats
	while ( $list = mysql_fetch_array( $query )) 
	{
		echo $list[0];
	}

// Deconnexion de la base de donnees
	mysql_close($idSql);
}
?> 

Re: Boite <select>

par laurents » 16 nov. 2011, 00:34

Je réponds car je crois avoir déjà vu ça : si tu veux qu'une action soit effectuée lorsqu'on sélectionne un champ du <select>, rajoute dans les options un "onclick" (je crois l'avoir déjà vu).

Re: Boite <select>

par moogli » 15 nov. 2011, 21:12

Salut,

Qu'est ce qui marche pas ?

Y a rien dans le dernier while ?
Si c'est le cas c'est normal que rien ne s'affiche ;)


@+

Re: Boite <select>

par manureva2b » 15 nov. 2011, 20:03

re bonsoir,

j'ai modifier mon code comme cela:

Code : Tout sélectionner

mysql_connect($host, $user, $passwd) or die('Erreur de connexion'); mysql_select_db($bdd) or die('Base inexistante'); $sql = 'SELECT DISTINCT ville FROM T_evenement'; $query = mysql_query($sql) or die( 'Erreur' ); $nb = mysql_num_rows($query); if ($nb == 0) { echo '<option>Aucune ville disponible</option>'; } else { while ( $list = mysql_fetch_array( $query ) ) { echo "<option value='".$list['ville']."'>".$list['ville']."</option>"; } } mysql_close(); ?> </select> </label> <label> <input type="submit" name="valider" id="valider" value="Envoyer" /> </label> </form> <?php mysql_connect($host, $user, $passwd) or die('Erreur de connexion'); mysql_select_db($bdd) or die('Base inexistante'); $sql = "SELECT DATE_FORMAT(date, '%d-%m-%Y') as datefr,jour,nom_event,descriptif,adresse,code_postal,ville,heure,contact FROM T_evenement WHERE ville = '".$_POST['ville']."';"; $query = mysql_query($sql) or die( 'Erreur' ); $result = mysql_query($query); // Recuperation des resultats while ( $list = mysql_fetch_array( $query ) ) { } // Deconnexion de la base de donnees mysql_close(); ?>
mais ça ne marche toujours pas. :cry: