Venez baraguiner avec la communauté !
Vous n'êtes pas identifié.
Bonjour à tous,
j'ai besoin d'un peu d'aide, j'essaye d'exécuter une requête mais ça ne marche pas.
Voila donc la requete (que j'ai un peu simplifie car elle fait + de 15 lignes):
<code type="php">
<?php
$requete = "SELECT DISTINCT membres.Id, membres.Pseudo, membres.DateNaissance, (6371 * ACos(Cos(RADIANS(communes.Lat)) * Cos(RADIANS($latitude)) * Cos(RADIANS($longitude) - RADIANS(communes.Lng)) + Sin(RADIANS(communes.Lat)) * Sin(RADIANS($latitude)))) AS Distance,
photos.Repertoire, photos.Photo1, communes.Lat, communes.Lng
FROM membres
LEFT JOIN communes ON communes.Idcommunes = membres.idVille
LEFT JOIN photos ON membres.Id = photos.ID_membres
WHERE
blabla && blabla &&
Distance <= $membresRayon ";
?>
</code>
L'erreur retourne est: champ Distance inconnu
J'ai essaye plusieurs chose mais rien a faire, par contre si j'enleve mes jointures ça fonctionne.
Merci de votre aide.
Hors ligne
Je suis oblige de faire le traitement en SQL.
En fait je calcule pour chaque membre la distance qui le sépare du membre qui effectue la recherche.
Je veux enregistrer le résultat dans un nouveaux champ Distance pour pouvoir l'afficher ensuite, pour le moment je ré-effectue le calcul en php pour pouvoir afficher la distance, je voulais donc éviter de faire 2 fois le même calcul.
Quand je fais ma requete sans jointure comme celle-ci ça fonctionne:
$requete = "SELECT City, IDcommunes, 6371 * ACos( Cos(RADIANS(Lat)) * Cos(RADIANS($latitude)) * Cos(RADIANS($longitude) - RADIANS(Lng)) + Sin(RADIANS(Lat)) * Sin(RADIANS($latitude)) ) AS Distance FROM communes ORDER BY Distance ";
Hors ligne