Sql error (mysql 5)

Gestart doorArjan13 reacties14 weergaven

14 berichten · pagina 1 van 1

Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Denk ik vandaag even weer eens te knutselen aan webzetter (emo) krijg ik ineens een sql error die er voor die tijd nog niet was.

Dus even gegoogled en gelezen dat de nieuwe mysql 5 anders werkt dan mysql 4 met queries waar JOIN in voorkomt.

Ik kom er iig niet uit misschien één van jullie wel. De query werkt dus WEL in mysql 4 maar NIET in mysql 5.

Codeblok (Forumquery):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

$query = "SELECT
p.id AS postid,
p.bericht,
p.auteur AS postauteur,
DATE_FORMAT(p.tijd, %d-%m-%Y rond %H:%i) AS nldatum,
p.updated,
DATE_FORMAT(p.updatedatum, %d-%m-%Y rond %H:%i) AS nlupdatedatum,
p.updatedoor,
p.modcomment,

u.id AS gebruikersid,
u.blognaam,
u.gebruikersnaam,
u.onderschrift,
u.avatar,
u.postcount,
u.onlineop,
u.rang,
DATE_FORMAT(u.registratiedatum, %d-%m-%Y) AS nlregistratiedatum,

r.naam,

s.naam AS forumnaam,
s.id AS forumid,

t.type,
t.gesloten,
t.titel

FROM
posts p,
users u,
forum_subcategorieen s,
topics t

LEFT JOIN
rangs r
ON
(u.rang = r.id)

WHERE
p.topicid = ".mysql_real_escape_string($_GET[id])."
AND
u.id = p.auteur
AND
s.id = t.forumid
AND
t.id = ".mysql_real_escape_string($_GET[id])."
ORDER BY
p.tijd
ASC";

Error: Unknown column u.rang in on clause
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
u.rang bestaat niet? emo
0
Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Rik schreef:
u.rang bestaat niet? emo
u.rang bestaat zeker.
Het heeft te maken met het JOIN gedeelte. Hoe en wat snap ik ook niet precies.
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Hmm, ik denkt dat mysql in de ON u.rang ziet als u.rang en niet user -> rang.

Ik zal het ff voor je na kijken.
0
Berichten
13.482
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
waarom (u.rang = r.id) tussen haken? sadley
edit: ow, ikbennoob emo
0
Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Rik schreef:
Hmm, ik denkt dat mysql in de ON u.rang ziet als u.rang en niet user -> rang.
Ik zal het ff voor je na kijken.

dat klopt allemaal wel het is veel ingewikkelder. Het werkte eerst ook prima in mysql 4 maar in mysql 5 niet meer.

@Sjoerd.
had toen op dat moment even zin om haakjes te typen.
0
Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Rik schreef:
Maybe moet je hier eens kijken, ik zie de fout ook niet precies.. http://dev.mysql.com/doc/refman/5.0/en/join.html
heb ik al gezien. Ik kom er gewoon niet uit emo
Als je echt een oplossing hebt mag je weer reageren yummie
0
Berichten
13.482
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
doe es

(r.id = u.rang)

ipv

(u.rang = r.id)
0
Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Sjoerd schreef:
doe es
(r.id = u.rang)

ipv

(u.rang = r.id)

Al geprobeerd. Zo was het eerst ook maar had het even omgedraaid.
0
Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Heb de join er nu helemaal uitgehaald.
Lijkt mij ook niet echt belangrijk om die erin te houden dus dit is ook weer opgelost.
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Waarom überhaupt een join en niet in je where de koppeling specificeren?
0
Arjan

Lid · Topicstarter

Berichten
747
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Lennard schreef:
Waarom überhaupt een join en niet in je where de koppeling specificeren?
Dat vroeg ik mij dus ook af toen ik de query nog eens goed bekeek.
Enige nuttige eraan is als de rang niet bestaat hij het bericht toch weergeeft. Zonder join als de rang niet bestaat geeft hij het hele bericht niet weer. Niet dat dit uitmaakt want wanneer zou je iemand een niet bestaande rang geven?

Dus zoals ik al zei opgelost.
0
Berichten
35.796
Reputatie
1
Punten
0,00
Lid sinds
Laatst gezien
Ja daarom, maargoed; nice. yummie
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren