Requête recuperer tous champs d'une colonne

Résolu/Fermé
cheese42 Messages postés 860 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 10 octobre 2018 - 19 mai 2010 à 13:08
cheese42 Messages postés 860 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 10 octobre 2018 - 27 mai 2010 à 03:48
Bonjour,

sur une table nommée (numerodejajoues),
j'ai un champs id, en auto-increment,
un champs grillenumero,
un champs pseudo,
un champs numeroduclic.

donc, ce que je cherche à faire, c'est que dès que je clique sur un chiffre,
on prend chiffre 251, donc lorsque je clique sur ce chiffre,
il faudrait que ma requete aille verifier si ce chiffre existe,
si oui alors on affiche une image comme quoi ce chiffre est deja mis,
sinon une image comme quoi le chiffre n'est pas encore mis.

((ici requete pour chercher le $numerog qui vaut 1 pour la 1ere grille^^)
ma requete actuelle :::

$savoirlesclicfaits = mysql_query("SELECT numeroduclic FROM numerodejajoues WHERE grillenumero='$numerog'")
or die ('bon ben ca plante la: '.mysql_error());

$ddd = mysql_fetch_array($savoirlesclicfaits);
$nwx = $ddd['numeroduclic'];
echo $nwx;

Et bien entendu, le echo est pour voir ce que ca va chercher, mais il m'affiche simplement le 1er enregistrement de la base, or, il devrait pourtant afficher tous les resultats du champs numeroduclic ??? non ???
Je ne cherche pas à les faire afficher pour la suite, simplement pour voir avant de mettre en ligne le jeu ^^

donc, le but est:::
de vérifier au moment de l'affichage de la page si le numero 251 existe en base dans cette table,et soit de l'afficher si il n'existe pas, ou bien de l'afficher si il existe,
voila merci de toute réponse @++....


A voir également:

8 réponses

SchSoftware Messages postés 46 Date d'inscription lundi 17 mai 2010 Statut Membre Dernière intervention 17 avril 2011 3
25 mai 2010 à 10:17
Bonjours

C'est un petit peu plus clair...

Donc (De ce que je comprend de votre énoncer)

Oui, la méthode la plus simple à coder (mais plus lourd) est de faire une requête pour chaque nombre (donc oui, 1000 requêtes!)

Sinon, plus légère (une seul requête, mais plus de code) de récupérer tous les nombres en une requête TRIER (... ORDER BY 'numeroduclic')
Puis de boucler dans vos résultats et de tester leurs limites.

En effet, si votre 1ère valeur vaut 5, vous savez que 1, 2, 3 et 4 ne sont pas dans la table
Si votre 2ème valeurs vaut 9, vous savez que 6, 7 et 8 ne sont pas dans la table...
...

Bien à vous
1
SchSoftware Messages postés 46 Date d'inscription lundi 17 mai 2010 Statut Membre Dernière intervention 17 avril 2011 3
21 mai 2010 à 23:15
Bonsoirs

Pas tout à fait...

La fonction mysql_fetch_array(...) va chercher l'enregistrement en court, la première fois
Puis le suivant...
Puis le suivant...
Jusqu'à ce que la valeur de retour ($ddd dans votre cas) soit nul

C'est à vous d'appeler la fonction, autans de fois que nécessaire

il faut écrire
while($ddd = mysql_fetch_array($savoirlesclicfaits))
{
$nwx = $ddd['numeroduclic'];
echo $nwx;
}
ou
$rowCount = mysql_num_rows($savoirlesclicfaits);
for($i = 0 ; $i < $rowCount ; i++)
{
$ddd = mysql_fetch_array($savoirlesclicfaits);
$nwx = $ddd['numeroduclic'];
echo $nwx;
}

Bien à vous
0
cheese42 Messages postés 860 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 10 octobre 2018 120
23 mai 2010 à 10:16
Bonjour SchSoftware,
tu es donc en train de me dire que vu que j'ai 1000 cases sur ma page, je vais être obliger de faire 1000 fois une requête ????? ^^

car :::
// $resultat = requete ::: selectionne tous les numeroduclic (chiffres)
// de la table touslesclicsgrille ou le numero de la grille est egal
// au numero de la grille qui est 1 en ce moment même
// ca ok, c'est bon ===>

$resultat = mysql_query("SELECT numeroduclic FROM touslesclicsgrille WHERE numdelagrille='$numerodelagrille'")
or die ('plantage : '.mysql_error());

ensuite sur cetta page, je dois afficher 1000 cases, si ces cases n'ont pas été cliquees, alors il y a un lien sur chacune des images, et si les liens ont deja ete cliqués alors, juste une image d'une croix :::

donc moi, ce que je cherche, et que je ne trouve pas , c'est cela::::

si case pas cliquée, affiche lien,
si case cliquée, affiche croix:::
comment faire pour vérifier si chiffre 1 en base, si chiffre 2 en base......si chiffre 999 en base, si chiffre 1000 en base ^^

comme cela ???? ==========>
<?php if($resultat['numeroduclic'] != 1){ echo $debgauche; ?>1<?php echo $finligne; } else { echo $sanslien; } ?>
<?php if($resultat['numeroduclic'] != 2){ echo $debgauche; ?>2<?php echo $finligne; } else { echo $sanslien; } ?>
<?php if($resultat['numeroduclic'] != 1000){ echo $debgauche; ?>1000<?php echo $finligne; } else { echo $sanslien; } ?>

????????????
Bonjour les 2000 lignes lol ^^
0
Salut,

Relis la réponse de SchSoftware, nulle part il ne te dit de refaire la requête pour chaque lgne... juste de faire un appel à mysql_fetch_array() pour chaque ligne.

... et au vu de ton incompréhension, je ne peux que te conseiller un peu de lecture
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cheese42 Messages postés 860 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 10 octobre 2018 120
25 mai 2010 à 09:11
bonjour, ben désolé, mais j'ai beau lire et relire,
je ne comprends toujours pas pour que:::

je prépare une requete qui va chercher TOUS les chiffres déja inscrits en base::::::::
$resultat = mysql_query("SELECT numeroduclic FROM touslesclicsgrille WHERE numdelagrille='$numerodelagrille'");
ca c'est bon....

ensuite je ne veux pas les afficher ces chiffres déjà inscrits en base,
mais juste que mon script vérifie si le chiffre est déjà inscrit,

( c'est la le bazar....), vous me dîtes de faire comme cela ??? ==>
$nb1='0';
while ($donnees1 = mysql_fetch_array($resultat) )
{
$nb1++;
echo ''.$donnees1['numeroduclic'].'';
}

ok, cela écrit sur la page tous les chiffres déjà en base les uns derriere les autres, mais je ne veux pas cela , mais simplement que :::

si il y est alors je fais afficher une image "X" et si il n'est pas en base,
alors par contre je fais afficher une image qui, en cliquant dessus, le fera insérer en base,
les scripts sont bons, sauf la variable à faire pour les 1000 chiffres -_-....

si le chiffre 21 est déja en base, affiche image "X"
et si il n'y est pas, affiche image "Y", si image 562 est en base, image "X", si n'est pas en base, image "Y" etc etc etc.....donc je suis obligé de faire ceci::
$nb1='0';
while ($donnees1 = mysql_fetch_array($resultat) )
{
$nb1++;
echo ''.$donnees1['numeroduclic'].'';
}
1000 fois de suite dans la page ????
merci de votre réponse @+++....
0
cheese42 Messages postés 860 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 10 octobre 2018 120
25 mai 2010 à 11:10
ok, merci SchSoftware, je vais essayer de faire, je ne mets pas en résolu encore, mais si je trouve une solution en rapport avec ton aide......

$resultat = mysql_query("SELECT numeroduclic FROM touslesclicsgrille WHERE numdelagrille='$numerodelagrille' ORDER BY numeroduclic ASC");

la, j'ai bien les chiffres deja en base mais bon sang, ils se suivent, ah s'il pouvait y avoir une virgule ou autre chose pour séparer les resultats tiens ^^ !!!!!

bon, ben j'essaie de faire au mieux.......

ps::
et quitte a mettre ceci 1000 fois, tant pis mais:::
$nb1='0';
while ($donnees1 = mysql_fetch_array($resultat) )
{
$nb1++;
echo ''.$donnees1['numeroduclic'].'';
}

comment dois-je faire pour que le nb1='0' aille chercher le suivant à chaque fois ???? merci !!!! car apres, je mettrai un" if " il y est alors affiche le pas......"else" affiche le ^^
0
SchSoftware Messages postés 46 Date d'inscription lundi 17 mai 2010 Statut Membre Dernière intervention 17 avril 2011 3
Modifié par SchSoftware le 27/05/2010 à 02:06
Bonsoir

Vous pourriez éventuellement stocker toutes les valeur dans un Array et utiliser la fonction de recherche pour le trouver facilement

Quelque chose du genre (pour vérifier les case 23, 15, 56, 99...)

$gridDataArray = array(23, 15, 56, 99);

$sqlDataArray = array();
while ($donnees1 = mysql_fetch_array($resultat) )
{
$sqlDataArray[] = $donnees1['numeroduclic']';
}

$dataGridCount = array_size($gridDataArray);
for($i = 0 ; $i < $dataGridCount ; $i++)
{
if(in_array($gridDataArray[$i], $sqlDataArray))
echo "Présent dans la table SQL.";
else
echo "Absent de la table SQL.";
}

Voilà
J'espère avoir compris ce que vous cherchez à faire

Bien à vous

Tous le monde peu ce tromper (moi le premier) !
J'essaye... C'est déjà ça!
0
cheese42 Messages postés 860 Date d'inscription mardi 11 septembre 2007 Statut Membre Dernière intervention 10 octobre 2018 120
27 mai 2010 à 03:48
allez merci SchSoftware d'avoir été là, bon alors du coup, prise de tête pendant 2 jours sur ca, donc, ce que j'ai fais:::

nouvelle table avec 500 champs ^^, si cliqué, je mets sur oui, si pas cliquéé, sur non, un update au clic, et puis voila, mdr ^^
merci encore @++....
-1