Problem basique

Répondre
Bzh
le 29/08/2005 à 14:03
Bzh
Cela est tout à fait normal !!!

Soyont un peu logique !

Tu test pour savoir si '$erreur' existe. Et si elle n' existe pas, tu vérifies que le nombre de valeur dans '$erreur' est bien égal à 0 !!!

Totalement illogique.

<?php

if( ! isset($erreur) ){

echo '<p>Attention erreur, la variable $erreur n\' est pas déclaré...</p>';

}else{


if( $succes == TRUE && count($erreur) == 0){

echo '<strong>Votre <span class="important">Baby-foot</span> a bien été ajouté au <span class="important">Repertoire de Foozball/span>. Nous vous en remercions !</strong>';

}


}

?>
akufnx
le 29/08/2005 à 14:33
akufnx
Merci de t'intéresser a moi ;)

J'ai remplacer la chose par cela, mais ça ne marche pas mieux....

<?php if( isset($erreur))
{
$nb_erreur = sizeof($erreur);
for( $j=0; $j < $nb_erreur; $j++)
{
echo '<span class="important">' .$erreur[$j]. '</span>';
}
}
elseif( $succes == TRUE )// IL n'y a pas d'erreur on peut onregistrer
{

//---------------------------------------------------
//On fait nos requêtes dans la BDD en ajoutant tout--
//---------------------------------------------------

echo '<strong>Votre <span class="important">Baby-foot</span> a bien été ajouté au <span class="important">Repertoire de Foozball/span>. Nous vous en remercions !</strong>';
}
?>
akufnx
le 29/08/2005 à 14:37
akufnx
désolé pour le double post, mais peut être que pour la compréhension il est préférable que je montre cela, placé avant le code précédent.

if (empty($erreur)) // Si il n'y a pas d'erreurs
{
$succes = TRUE;
}
akufnx
le 29/08/2005 à 16:22
akufnx
Pour ça c'est bon, par contre il me reste encore un petit problème à resoudre....
J'aimerai afficher dans un menu déroulant les villes, et si auparavant l'utilisateur avait choisi un département puis clicker sur "afficher uniquement les villes disponibles pour ce département" alors ça n'afficherait dans le menu déroulant dessous uniquement les villes de ce département :

$req = 'SELECT DISTINCT(ville) FROM repertoire_babyfoot WHERE departement="'.$departement.'"'; // On selectionne seulement les villes du departement choisi en evitant les doublons
$retour = mysql_query($req) or die( 'Erreur SQL'.mysql_error().'');
$tableau_villes = array(); // On déclare notre tableau des villes
while( $data = mysql_fetch_array($retour) )
{
$tableau_villes[] = $data;// On le remplit seulement avec les ville du département concerné
}
mysql_free_result($retour);
}
else
{
$req = 'SELECT DISTINCT(ville) FROM repertoire_babyfoot';// On selectionne toute les villes de la base de donnée en evitant les doublons
$retour = mysql_query($req) or die( 'Erreur SQL'.mysql_error().'');
$tableau_villes = array(); // On déclare notre tableau des villes
while( $data = mysql_fetch_array($retour) )
{
$tableau_villes[] = $data;// On le remplit avec toutes les villes
}
mysql_free_result($retour);
}

//Des lignes et des lignes pour le reste...

<select name="ville">
<option value="zerovide">S&eacute;lectionnez une ville</option>
<?php for($k=0; $k < sizeof($tableau_villes); $k++)
{
echo '<option value="'.$tableau_villes[$k].'">'.$tableau_villes[$k].'</option>';
}
?>
</select>


C'est ce que j'ai essayais, mais ça ne m'affiche pas le nom de la Ville mais "Array", et le filtrage ne fonctionne pas (aucune ville ne s'affiche...)

Si vous voyez quelque chose à faire ...

Merci beaucoup !
Bzh
le 29/08/2005 à 16:48
Bzh
<?php

$req = 'SELECT DISTINCT(ville) FROM repertoire_babyfoot WHERE departement="'.$departement.'"'; // On selectionne seulement les villes du departement choisi en evitant les doublons
$retour = mysql_query($req) or die( 'Erreur SQL'.mysql_error().'');
$tableau_villes = array(); // On déclare notre tableau des villes
while( $data = mysql_fetch_array($retour) )
{
$tableau_villes[] = $data;// On le remplit seulement avec les ville du département concerné
}
mysql_free_result($retour);
}
else
{
$req = 'SELECT DISTINCT(ville) FROM repertoire_babyfoot';// On selectionne toute les villes de la base de donnée en evitant les doublons
$retour = mysql_query($req) or die( 'Erreur SQL'.mysql_error().'');
$tableau_villes = array(); // On déclare notre tableau des villes
while( $data = mysql_fetch_array($retour) )
{
//////////////////////////////////////////////
//////////////////////////////////////////////
////////Modification//////////////////////////
$tableau_villes[] = $data['ville'];// On le remplit avec toutes les villes
////////Fin de la modification////////////////
//////////////////////////////////////////////
//////////////////////////////////////////////
}
mysql_free_result($retour);
}

//Des lignes et des lignes pour le reste...

<select name="ville">
<option value="zerovide">S&eacute;lectionnez une ville</option>
<?php for($k=0; $k < sizeof($tableau_villes); $k++)
{
echo '<option value="'.$tableau_villes[$k].'">'.$tableau_villes[$k].'</option>';
}
?>
</select>


Il y a beaucoup plus de chance que cela fonctionne mieu ainsi...

Bye...
akufnx
le 29/08/2005 à 16:54
akufnx
Mon Dieu comme je suis con.. C'est la fatigue, cala fait 10 heures sue je suis sur le code complet !

Un dernier petit problème et après je vous lache, promis...

Ici désormais toutes les villes s'affiche, mais pas lors du filtrage... Aucune ville...
akufnx
le 29/08/2005 à 19:08
akufnx
None merci, c'est bon, j'y suis parvenu après du repos bien mérité...
Merci encore pour ton aide ;)
akufnx
le 30/08/2005 à 22:43
akufnx
Bon, j'avance dans mon script, qui est presque terminé, il ne me reste plus que quelques mises au point.

Voila un bout de code :

<?php
if(isset( $_GET['nville']) && !empty($_GET['nville']))
{
$lettre_ville = htmlentities($_GET['nville']);
echo '<h4>Villes commençant par la lettre <span class="important">'.$lettre_ville.'</span></h4>';

$req='SELECT DISTINCT ville, departement FROM repertoire_babyfoot WHERE ville LIKE "'.$lettre_ville.'%" ORDER BY ville ASC';
$retour = mysql_query($req) or die( 'Erreur SQL'.mysql_error().'');
while( $data = mysql_fetch_array($retour) )
{
?>
<span class="lien_ville"><a href="repertoire_ville.php?ville=<?php echo stripslashes($data['ville']); ?>&dep=<?php echo stripslashes($data['departement']); ?>" ><?php echo stripslashes($data['ville']); ?> </a>(<?php echo stripslashes($data['departement']); ?>) </span>
<?php
}
}
?>

<?php
if(isset( $_GET['ndep']) && !empty($_GET['ndep']))
{
$num_dep = htmlentities($_GET['ndep']);
echo '<h4>Villes dans le <span class="important">'.$num_dep.'</span></h4>';

$req='SELECT DISTINCT ville, departement FROM repertoire_babyfoot WHERE departement="'.$num_dep.'" ORDER BY ville ASC';
$retour = mysql_query($req) or die( 'Erreur SQL'.mysql_error().'');
while( $data = mysql_fetch_array($retour) )
{
?>
<span class="lien_ville"><a href="repertoire_ville.php?ville=<?php echo stripslashes($data['ville']); ?>" ><?php echo stripslashes($data['ville']); ?> </a>(<?php echo stripslashes($data['departement']); ?>) </span>
<?php
}
}
?>


Je désirais simplement que lorsque la requête ne donne rien, que l'on n'affiche pas le '<h4>Villes dans le <span class="important">'.$num_dep.'</span></h4>', mais un message comme quoi il n'y a respectivement dans le premier cas, pas de ville commençant par cette lettre, et dans le second cas, pas de département avec ce numéro...

Comment faire ? La solution doit être évidente, mais je ne la voit pas...

Merci.
Répondre
LoadingChargement en cours