Page 1 sur 1

Probleme sur requete SQL

Posté : 22 nov. 2006, 21:15
par vares2
Bonjour,

J'ai une table foto dans laquelle chaque utilisateur peut laisser 3 fotos o maximum. Je veux aficher sur ma page une photo par utilisateur. cela suppose donc qu'il faut que je suprime les doublons.

J'ai crée cette requete mais elle ne fonctionne pas. aidez moi
$sql="SELECT DISTINCT user,miniature FROM photos where id_cat='$id_cat' ORDER BY miniature LIMIT 0,12"; 

Posté : 22 nov. 2006, 21:53
par Truc
Modération : Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "SQL & Bases de données" qui concerne tout ce qui est "requête" :wink:

Posté : 22 nov. 2006, 21:54
par Truc
Salut,

Avant de donner une réponse peux tu détailler le fonctionnement des tables, comment sont enregistrées les différentes photos ?

Posté : 22 nov. 2006, 22:15
par albat
Pour commencer, ta syntaxe est incorrecte.

On ne le dira jamais assez :
Sortez les variables des chaînes de caractères ! :tir2:
$sql = "SELECT DISTINCT user, miniature FROM photos WHERE id_cat='".$id_cat."' ORDER BY miniature LIMIT 0,12"; // si id_cat est alphanumérique
$sql = "SELECT DISTINCT user, miniature FROM photos WHERE id_cat=".$id_cat." ORDER BY miniature LIMIT 0,12";   // si id_cat est numérique
À tout hasard, qu'est-ce que ça donne après ces corrections ?... :-*

Pb au niveau de ma Requete SQL

Posté : 24 nov. 2006, 17:13
par vares2
J'ai essayé

Code : Tout sélectionner

$sql = "SELECT DISTINCT user, miniature FROM photos WHERE id_cat='".$id_cat."' ORDER BY miniature LIMIT 0,12"; // si id_cat est alphanumérique $sql = "SELECT DISTINCT user, miniature FROM photos WHERE id_cat=".$id_cat." ORDER BY miniature LIMIT 0,12"; // si id_cat est numérique
Mais toujours la même chose. sa ne marche pas[/list]

Posté : 24 nov. 2006, 17:46
par zeus
Est-ce que tu peut nous donner le message d'erreur que tu obtiens. Puis essayer de passer ta requete directement dans phpMyAdmin et nous dire ce qui ne marche pas ?

Eurêka

Posté : 24 nov. 2006, 17:58
par vares2
J'ai trouvé la solution à mon problème.

Code : Tout sélectionner

SELECT user,miniature FROM photos where id_cat='$id_cat' group by user
Merci pour votre aide!

Posté : 24 nov. 2006, 21:25
par Truc
Je vais tout de même détailler le fond de ma pensée du début :
Il y a certainement un schmilblick dans la modèlisation de la table, beaucoup de données seront répétées inutilement (d'après ce que j'ai pu comprendre).

Si l'utilisateur a 3 images il y aura 3 fois son pseudo (peut être d'autres champs aussi :-k).