begin process at 2012 05 29 01:31:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Bases de données

 > 

Double requête extra-terrestre


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Double requête extra-terrestre

jeudi 22 janvier 2004 à 03:49:56 | Double requête extra-terrestre

mathieumg

Bonjour !

Je vous explique !

J'ai une base de donnée qui contient les membres dans une table 'members' avec un champ 'clicks en cours' nommé 'beingclick'. et une table qui contient les enregistrements des clicks nommée 'clicks' qui contient : l'utilisateur qui a cliqué, quel utilisateur il a cliqué et la date au format 0000-00-00 conventionnel.

Le but est d'afficher le membre qui a le plus de clicks en attente 'beingclick' mais qui n'as pas déja été clické aujourd'hui par le membre connecté la journée même.

Le champ beingclick est décimal(15,2).

D'ou le titre le problème est très extra-terrestre car tout marche si admettons le membre x a 2.0 de beingclick et le membre y a 1.0 de beingclick et que aucun des deux n'a été clické le jour même ça affiche le membre x ce qui est correct.

Aussitot que le beingclick du membre x devient plus gros que 2.0, soit 3.0, 12.7 ou meme 281.2, vraiment n'importe quoi plus haut il l'ignore et passe au membre y. ET si le membre y a déja été cliqué cette journée il me dit qu'il n'y a plus personne a cliquer cette journée !

Alors j'aimerais savoir pourquoi quand la valeur du champ beingclick est supérieure à 2.0 il y a une réaction ASBOLUMENT bizare.

Voici la source


//Connection à la DB
$connect=mysql_connect($host,$dbuser,$dbpass) or die ("Impossible de se connecter");
mysql_select_db($base, $connect) or die ("Impossible de selectionner la base de donnees");

//Déclaration de la requete # 1dans la table membres
$req_toclick1 = mysql_query("SELECT * FROM members WHERE beingclick>'0.9' ORDER BY 'beingclick' DESC LIMIT 1",$connect) or die ("erreur requete");

//Déclaration de la requete #2 dans la table membres
$req_toclick2 = mysql_query("SELECT * FROM members WHERE beingclick>'0.9' ORDER BY 'beingclick' DESC",$connect) or die ("erreur requete");

//Mise en array de la requete 1
$membreclick=mysql_fetch_array($req_toclick1);

//Vérifie qu'il y a bien quelqu'un a cliquer
if(mysql_num_rows($req_toclick1)!=0)
{

//Boucle pour passer ceux à cliquer en commencant par celui qui en a le plus
while($membretest=mysql_fetch_array($req_toclick2))
{

//Si la variable $nodouble n'est pas définie continuer
if(!$nodouble)
{
$temps2=date("Y-m-d");
//Déclaration de la variable de la table clicks
$req_double = mysql_query("SELECT * FROM clicks WHERE par='$_SESSION[log_username]' AND pour='$membretest[username]' AND jour='$temps2'",$connect);

//Si la personne n'as pas déja été cliquée elle est bonne alors définition de la variable $nodouble pour qu'au second passage du while il ignore (voir commentaire plus haut)
if(mysql_num_rows($req_double)==0)
{
$nodouble="1";
//Affichage du code pour le liej à clicker
print("<b>$membretest[username]</b> ");
echo '<input type="button" value="'.$la_cliquer.'" name="clicking" onclick="clicking('.$membretest[id].');this.disabled='."'".'true'."'".'" style="background-color: #000000; color: #FFFFFF; font-family: Verdana; font-size: 10pt; border: 1 solid #95CDFC"></input>';
'</font>
}
}
}
}

//Si il y a des membres qui sont a plus haut de 0.9 pour le champs 'beingclick' mais qu'ils ont déja été cliqué dans la table 'clicks'
if(!$nodouble&&mysql_num_rows($req_toclick1)!=0)
{
print("You already clicked every body today.");
}

//Si il n'y a pas de membre a plus haut de 0.9 pour le champs 'beingclick'
elseif(!$nodouble&&mysql_num_rows($req_toclick1)==0)
{
print("Sorry there is nobody to click.");
}


Merci d'avance à tout ceux qui m'aident je suis vraiment désespéré !

Mathieu M-G
[ Lien ]


Cette discussion est classée dans : req, mysql, membre, clicks, beingclick


Répondre à ce message

Sujets en rapport avec ce message

Requete sql pour validation de ID&PASS membre [ par destiny ] Bonjour all,Alors voila chui debutant jvous le cache pas... En gros : $pseudo = $_REQUEST['utili'];    $mdp = $_REQUEST['mdp']; Pb de boucle [ par Arnauti ] Bonjour, j'ai un problème avec une boucle PHP. Voici mon code $connexion = mysql_connect('localhost', 'bigrum_fr', '' ); $base = mysql_select_db('bi Probleme de requete pour affichage membre [ par magicjim ] Bonjour @ tous, voila mon probleme je fait une requete par le biais d'un formulaire qui envoit l'id du membre, mais a l'affichage cela ne me montre qu Combien de membre inscrits REQUETE MYSQL [ par dan4 ] Si j ai 12 membres inscrits, c'est quoi le code PHP qui me permet d'afficher que j'ai 12 membres d'inscrits?C'est un espace membre que je me suis fai Problème MySQL [ par snakykyle ] Bonjour tout le monde,J'aimerai savoir comment faire des changement aléatoire avec MySQL... Je m'explique:Voila, j'ai une base "Jopy" (exemple) qui es encore un prob easyphp 1.6 - 1.7 [ par Pretender ] Salut,donc jai installé easyphp1.7 et le problème que j'ai maintenant est que:j'ai le code suivant:< double [ par lan0sic ] voila j'aimerai tester si il y a deja un login du meme nom sur la base de donnée. j'utilise ce code: # test si login est deja existant // on fait une prob d'inscription pour un espace membre [ par bricethenetman ] Slt j''avé créer un petit script trés basic pour inscrir les membres de mon site(Insert into... ) à présent je l'ai modifier pour ke si un pseudo exi Pouquoi ça marche pas??? [ par jcdc ] je voudrais gérer une inscription dans une base MySQL. A chaque saisie je test le mail, et le pseudo pour ne pas faire de doublon. La premiere inscrip mysql et php [ par nico606 ] Salut g un probleme je debute en php et je viens de charger un espace membre pour mon site il est evidemment en php et Mysql y a une page d'installati


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales