In mijn osCommerce webshop krijg ik de volgende fout nadat ik een productcategorie wil bekijken:
1054 - Unknown column 'p.products_id' in 'on clause'
select count(*) as total from products_description pd, products p left join manufacturers m on p.manufacturers_id = m.manufacturers_id, products_to_categories p2c left join specials s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '2' and p2c.categories_id = '274'
Waar kan dit aan liggen? Ik begrijp de fout namelijk ook niet...
@Bart
Dat SQL ongelijk is aan PHP is een ieder wel duidelijk, echter wat Afra probeert duidelijk te maken is dat je waarden welke je gaat toekennen aan een tabelveld van het type numeriek je deze in SQL niet qoute. En ja daar heeft hij/zij/het dan gelijk in!
@Afra, dus jij neemt met je gezonde verstand aan dat
- language_id
- categories_id
- products_status
een numeriek veldtype hebben
Je kan niet zo maar schrijven `integers NIET tussen quotes`, wat als de TS lekker varchar als type gedefineerd heeft staan!
Dan lijkt het mij aan ons de taak om TS erop te wijzen dat dat misschien niet zo'n geweldig plan is. Ik zie namelijk geen voordelen van categories_id als varchar op te slaan. Maar je hebt gelijk, indien dit wel de situatie is, dan moet het wel in quotes.
Noppes schreef op 21.06.2009 12:25
@Bart
Dat SQL ongelijk is aan PHP is een ieder wel duidelijk, echter wat Afra probeert duidelijk te maken is dat je waarden welke je gaat toekennen aan een tabelveld van het type numeriek je deze in SQL niet qoute. En ja daar heeft hij/zij/het dan gelijk in!
Bedankt voor jullie hulp tot nu toe, ik heb me wat verdiept in die JOIN functie maar ik kan echt niet zien wat er fout is. De velden zijn inderdaad gewoon int() en geen varchar, maar laat het nogmaals duidelijk zijn: ik heb dit script niet geschreven, heb deze webshop gekocht en ben 'm nu aan het uploaden op mijn eigen host, in principe werkt alles behalve die query en dat is natuurlijk onhandig.
Degene die mij kan laten zien waar de fout zit en hoe ik het kan verbeteren zal ik met een gratis domein naar keuze belonen. Bij voorbaat dank!
En hoe kan ik m verbeteren Noppes, dat is mijn laatste vraag? Als je even de juiste query laat zien zal ik je niet meer lastigvallen. Dan krijg je ook je verdiende gratis domein naar keuze (wat ik bij TransIP op jouw naam registreer, waarvoor ik betaal en daarna push (gratis) naar jouw account).
Noppes, nogmaals: ik respecteer je hulp, daar draait het niet om en ik wil ook best leren, maar zit momenteel om een bepaalde reden wat in tijdnood en anders gaat het te lang duren wat een hoop kosten met zich meebrengt.
Begrijp me niet verkeerd: ik respecteer het dat je me helpt en daar wilde ik iets tegenover zetten..