pb de sql, j'ai un peu du mal

Répondre
bibi
le 24/03/2004 à 21:01
bibi
Alors j'ai 2 tables:

POINTS
----------
id
idnick
points

et

FILLEUL
---------
id
pseudo


Dans la table FILLEUL,id est l'id du parrain et pseudo et le pseudo du filleul.Chaque filleul ou parrain a une id, un idnick(pseudo) correspondant dans la table POINTS.Je voudrais en fait sélectionner 10% des points des filleuls et les ajouter au parrain.

Par ex:

table points:

- id=1 , idnick = bibi, points=500
- id=2 , idnick = globule,points=100

et dans la table filleul:

-id=1, pseudo=globule

donc globule est un filleul de bibi
et au calcul des points, bibi aura : 500+ 100*(10/100)

Mais je pete un cable dans les while($req=mysql_fetch_array($req_sql))
<?php
$req_sql = mysql_query('SELECT id,idnick,points FROM points ORDER BY points DESC');
$cpt=1;
while($req = mysql_fetch_array($req_sql))
{
$pts = 0;
$filleul_sql = mysql_query('SELECT * FROM filleul,points WHERE filleul.id = points.id AND points.id = "'.$req['id'].'"');
while($filleul = mysql_fetch_array($filleul_sql))
{
$fil_sql = mysql_query('SELECT points FROM points WHERE idnick = "'.$filleul['pseudo'].'"');

while($fil = mysql_fetch_array($fil_sql))
{
$pts = $pts + $fil['points']/10;
}
}

$pts = pts + $req['points'];



?>
<tr><td><?= $cpt; ?></td><td><?= $req['idnick']; ?></td><td><?= $pts; ?></td></tr>
<?php
$cpt++;
}
?>


Ah oui dernier pb.la boucle principale qui englobe toutes les autres.Elle va ordonner par les points avant l'ajout des points des filleuls, donc ce qui fait que l'ordre apres l'ajout des points de filleuls ne sera plus le bon
merci de votre aide

PS : pour la requete précédente, il me fait cette erreur :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/www.chat-land.org/avfr/classement.php on line 21

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/www.chat-land.org/avfr/classement.php on line 21

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/www.chat-land.org/avfr/classement.php on line 21


Ligne 21: while($fil = mysql_fetch_array($fil_sql))

vous pouvez tester sur http://www.chat-land.org/avfr/classement.php

merci d'avance les sql/php-men :p
commit suicide
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours