News et problèmes en Informatique - Vol I

Débats, partage et délires en tout genre. C'est une tradition maintenant...

Modérateur: Modérateurs

Retourner vers Le Café



Messagepar Ki-2 » 15 Avr 2007, 19:19

loursin a écrit:
Le Kaiser a écrit:Ki-2, en fait mon besoin est très simple. Sur la page d'accueil de mon site afterfoot (nouvelle version) je voulais mettre els 3 derniers joueurs inscrits en base. Afin de différencier mes pages deans le wiki, les fiche de joueurs appartiennent à la catégorie (cl_to dans la bdd wiki) "Joueurs" de la table "categorylist". En face de chaque article appartenant à la catégorie joueur, j'ai un n° unique "cl_from". Afin de savoir de quel joueur il s'agit je dois retrouver ce même numéro "cl_from" dans la table "page", pour ensuite y associer la valeur "page_title" qui correspond de fait au nom du joueur sous la forme Prenom_Nom. (toutes mes images de joueurs sont également sous cette forme là)

mon abjectif est donc le suivant
1- je choisi les 3 dernières "id" dans la base catégorylist avec comme paramètre "catégory='joueurs'"

2 - un fois ces 3 valeurs obtenues, je dois interroger la table "page" pour connaitre la valeur du champ "page_title" associée à chacune de ces 3 valeurs

3- je dois afficher le lien et la photo du joueurs (index.php?title=page_title et page_title.jpg) dans un tableau à 1 ligne et 3 colonnes.

Et bien évidemment je n'y arrive pas. le code que tu as vu provient d'ci

Si tu peux m'éclairer, par avance, merci beaucoup... le chemin vers la maitrise du php est long et difficile, mais je suis confiant


ou un truc style

select page_title from page where cl_from IN (select cl_from from categorylist where category="joueurs" order by cl_from DESC limit 3)

+1
tu devrais pas réutiliser du code déja tout fait en général sa marche pas (la preuve)
Avatar de l’utilisateur
Ki-2
Assidu
Assidu
 
Messages: 1896
Enregistré le: 22 Mai 2006, 11:54
Localisation: Au pays du ciel monochromatique

Messagepar Le Kaiser » 15 Avr 2007, 19:42

ben là j'ai essayé
Code: Tout sélectionner
   $sql = mysql_query("SELECT page_title FROM page WHERE cl_from IN (SELECT cl_from FROM categorylinks WHERE cl_to='Joueurs' order by cl_from DESC limit O, 1) ");

echo "<img src=http://www.afterfoot.com/wikifoot/images/joueurs/$sql.jpg></img><br>
<a href=http://afterfoot.com/wikifoot/index.php?title=$sql><u>$sql</u></a>"


mais ca marche pas plus.. il faut savoir que les champ "cl_from" de la table categorylinks et "page_id" de la table page ont les mêmes valeurs mais des noms différents.. du coup il ne retrouve pas de "cl_from" dans la table "page"
j'ai essayé de mettre $page_id = cl_from; avant mais ca marche pas ... :(
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 19:49

bin remplace direct dans la requete

SELECT page_title FROM page WHERE cl_from IN (SELECT page_id FROM categorylinks WHERE cl_to='Joueurs' order by cl_from DESC limit O, 3

puis t'as oublié une étape entre la tentative d'affichage et le résultat de la requete

genre

while($data = mysql_fetch_array($sql))
{
echo "<img src=http://www.afterfoot.com/wikifoot/images/joueurs/".$data[page_title].".jpg></img><br>
<a href=http://afterfoot.com/wikifoot/index.php?title=".$data[page_title]."><u>".$data[page_title]."</u></a>"
}
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar Le Kaiser » 15 Avr 2007, 21:22

bon je suis vraiment navré loursin mais ton code de marche pas plus. j'ai rien... le problème de la requete jointe est que des champs qui ont la même valeur n'ont pas le même nom en fonction de l atable où ils se trouvent.

D'où mon tout premier code où je fais la première requete, puis la seconde avec comme parametre l'égalité entre les 2 champs "cl_from" et "page_id"

je craaaaaaaaaque :rocket:
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 21:28

tu parles de la requete ? tu peux pas la tester directement dans phpmyadmin ou un truc du style ?

d'ailleurs rajoute

or die('<br>'.$sql.'<br>'.mysql_error());

après le mysql_query histoire de voir si l'erreur vient de la requete ou de son traitement

(et a la limite, met ton code complet)
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar loursin » 15 Avr 2007, 21:29

bin a priori c'est pas vraiment un probleme que le nom du champ change d'une table a l'autre... c'est meme tres habituel
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar Le Kaiser » 15 Avr 2007, 21:36

ok merci pour le or die

j'ai un message d'erreur qui me dit
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'O , 1' at line 1


avec comme code :
Code: Tout sélectionner
   <?php
   
   //dernier joueur

   $sql = mysql_query("SELECT page_title FROM page WHERE cl_from IN (SELECT page_id FROM categorylinks WHERE cl_to= 'Joueurs' order by cl_timestamp DESC limit O , 1  ")or die('<br>'.$sql.'<br>'.mysql_error());

while($data = mysql_fetch_array($sql))
{
echo "<img src=http://www.afterfoot.com/wikifoot/images/joueurs/".$data[page_title].".jpg></img><br>
<a href=http://afterfoot.com/wikifoot/index.php?title=".$data[page_title]."><u>".$data[page_title]."</u></a>";
}

?>


ma version de mysql est la MySQL - 5.0.26-standard et je suis en php5 (pour mediawiki 1.9.3 c'est obligatoire)
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 21:38

bon bin vire le limit 0,1 deja pour voir :D

edit : ah bah non il manque une parenthese dans ta requete

$sql = mysql_query("SELECT page_title FROM page WHERE cl_from IN (SELECT page_id FROM categorylinks WHERE cl_to= 'Joueurs' order by cl_timestamp DESC limit O , 1 ) ")or die('<br>'.$sql.'<br>'.mysql_error());
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar loursin » 15 Avr 2007, 21:46

bin non avant, je te l'ai mis en gras ;)
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar loursin » 15 Avr 2007, 21:47

hey t'as viré ton message ! :lol:
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar Le Kaiser » 15 Avr 2007, 21:47

ca y ets j'ai le fond du pb... :
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'


ca fait plaisir un tel message.. bon va faloir trouver une autre methode
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 21:54

humpf bizarre...

bon bin

SELECT p.page_title FROM page p ,categorylinks c WHERE c.cl_from=p.page_id order by p.page_id desc

puis tu afficheras que les 3 premiers
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar Le Kaiser » 15 Avr 2007, 22:02

tu fais comment pour afficher les 3 premiers ? sinon ca marche.. merci beaucoup

juste pour info le p. de vant page_title, il sert à quoi ?
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 22:07

heu pas à grand chose effectivement dans ce cas précis mais j'ai l'habitude de toujours préfixer mes champs histoire d'y voir clair si je rajoute des trucs dans la requete par la suite... c'est un détail ;)

pour limiter aux 3 premiers... tu peux arreter ta boucle apres 3 passages par exemple avec un truc du style

$i = 3;
while (.... && $i>0)
{
...
...
$i--;
}

y'a peut-etre mieux... dommage que ton LIMIT veuille pas marcher
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar Le Kaiser » 15 Avr 2007, 22:25

en fait si il fonctionne c'est le IN qui bloquait je pense.. du coup c'est comem ça que j'ai fait

tu peux voir le résultat (il me reste à formater les images afin qu'elles aient toutes la même dimension ce qui va pas être aisé étant donné la diversité des sources
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 22:31

tu peux toujours utiliser des <div> avec des dimensions fixes par exemple
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar Le Kaiser » 15 Avr 2007, 22:33

oui c'es ce que j'ai fait mais bon vu la taille de mes images c'est pas génial... ca risque d'être la fête du pixel
Avatar de l’utilisateur
Le Kaiser
Assidu
Assidu
 
Messages: 1702
Enregistré le: 18 Aoû 2005, 22:46
Localisation: Côté gauche

Messagepar loursin » 15 Avr 2007, 22:35

:mrgreen: amuse toi bien ;)
Image
...et les trois mousquetaires des cinq doigts de la main,
tournant la manivelle d'un petit sous-marin, plongeant au fond des mers pour chercher des oursins.
Avatar de l’utilisateur
loursin
Echinopachyderme
Echinopachyderme
 
Messages: 18209
Enregistré le: 08 Juin 2005, 20:45
Localisation: Au dessus de "Sidi Brahim Alimentation", dans le 5e

Messagepar The Flankeur » 16 Avr 2007, 21:29

j'ai un souci avec AZUREUS
je ne trouve pas de chanson de rap en francais.
quelqu'un connaitrait il un torrent qui pourrait m'aider???
merci
The Flankeur Je te remercie sincerement de noter mes efforts, tu es mon omliver préféré@Rocca
The Flankeur, t'es un mec cultivé alors 8)@Squall
The Flankeur, tu es mon idole.. 8)@jeanfred
Avatar de l’utilisateur
The Flankeur
Habituel
Habituel
 
Messages: 9060
Enregistré le: 09 Mar 2005, 15:36
Localisation: au milieu du Pacifique a Bora bora.

Messagepar chris92300 » 25 Avr 2007, 21:24

Je voudrais savoir si quelques uns d'entre vous ont des problèmes de surchauffe Freebox HD ces temps-ci avec les fortes chaleurs?
Du genre l'image qui zig zag ou qui passe en noir et blanc pour finir par un plantage complet necessitant un reboot après avoir laisser refroidire le boitier?
Avatar de l’utilisateur
chris92300
Habituel
Habituel
 
Messages: 9815
Enregistré le: 17 Jan 2005, 19:01
Localisation: Levallois

PrécédenteSuivante

Retourner vers Le Café

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 68 invités