Toon posts:

[MYSQL] Query opbouw

Pagina: 1
Acties:
  • 47 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik heb een mysql query voor een site. Deze heb ik op een develop machine ontwikkeld. Alleen werkt het nu op de live server niet. Heb de query al aangepast, maar krijg het niet voor mekaar.

Host info:
  • MySQL Client API version: 3.23.58
  • PHP Version: 4.3.10
Mijn query:


$query = mysql_query(" SELECT
".$dbPrefix."schedule.time,".$dbPrefix."sports.name AS sportName,
".$dbPrefix."sports.img AS sportImage,".$dbPrefix."instructors.name
AS instructorName,".$dbPrefix."schedule.studio
FROM
".$dbPrefix."schedule
INNER JOIN
".$dbPrefix."sports,".$dbPrefix."instructors
ON
".$dbPrefix."schedule.sport = ".$dbPrefix."sports.id
AND
".$dbPrefix."schedule.instructor = ".$dbPrefix."instructors.id
WHERE
".$dbPrefix."schedule.day='".$day."'
ORDER BY
".$ordering." ".$ordertype."
") or die (mysql_error());


waarbij de $dbPrefix uiteraard is geset ('hengelo_') ;)

Foutmelding: You have an error in your SQL syntax near 'hengelo_instructors ON hengelo_schedule.sport = hengelo_sports.id ' at line 8

Ligt het nu aan de hosting of aan mijn script?

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 20-02 14:43
Verwijderd schreef op donderdag 27 april 2006 @ 09:29:
...
".$dbPrefix."schedule
INNER JOIN
".$dbPrefix."sports.".$dbPrefix."instructors
ON
".$dbPrefix."schedule.sport = ".$dbPrefix."sports.id
...

Ligt het nu aan de hosting of aan mijn script?
Daar ligt de fout. Komop zeg, een beetje standaard debugging dit...

Klopt, te kortzichtig van mij. Maar kun je in een join conditie twee tabellen joinen? Waarom niet twee inner joins op die twee aparte tabellen.

[ Voor 31% gewijzigd door zeroxcool op 27-04-2006 09:41 ]

zeroxcool.net - curity.eu


Verwijderd

Topicstarter
Uhm...twee tabellen scheiden met een . (punt) ??? 8)7
Krijg bij het toepassen van je 'oplossing' de fout: select command denied to user

De fout ligt volgens mij ergens anders...

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Het is sowieso mooier om te schrijven:
SELECT bla FROM TabelA
INNER JOIN TabelB ON veld1=veld2
INNER JOIN TabelC ON veld3=veld4

Dat is veel duidelijker leesbaar dan eerst allemaal tabelnamen opnoemen en later er wat join condities achteraan gooien. :)

{signature}


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 22-02 00:22

Janoz

Moderator Devschuur®

!litemod

Ik zou maar eens in je mysql handleiding gaan kijken wat de syntax is van een query, en dan specifiek wat de syntax is van een join. De foutmelding is duidelijk en syntax fouten zijn over het algemeen gewoon type fouten die je simpel zelf op kunt lossen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Dit topic is gesloten.