Visualizzazione dei risultati da 1 a 7 su 7

Discussione: query problematica

  1. #1

    query problematica

    Salve ragazzi. Sto usando zen cart per fare un sito ed ho installato un mod che permette di usare il mod rewrite. Questo mod ha una query che purtroppo non funziona e non riesco proprio a capire perchè!

    Questa è la query:

    Codice PHP:
    $sql "SELECT c.categories_id as id, c.parent_id, cd.categories_name as cName, cd2.categories_name as pName  
    FROM "
    .TABLE_CATEGORIES." c, 
    "
    .TABLE_CATEGORIES_DESCRIPTION." cd 
    LEFT JOIN "
    .TABLE_CATEGORIES_DESCRIPTION." cd2 
    ON c.parent_id=cd2.categories_id AND cd2.language_id='"
    .(int)$this->languages_id."' 
    WHERE c.categories_id=cd.categories_id 
    AND cd.language_id='"
    .(int)$this->languages_id."'"
    Questo è l'errore

    1054 Unknown column 'c.parent_id' in 'on clause'
    in:
    [SELECT c.categories_id as id, c.parent_id, cd.categories_name as cName, cd2.categories_name as pName FROM zen_categories c, zen_categories_description cd LEFT JOIN zen_categories_description cd2 ON c.parent_id=cd2.categories_id AND cd2.language_id='2' WHERE c.categories_id=cd.categories_id AND cd.language_id='2']
    Mi dà problemi sulla clausola ON. Sembra non riconosca c.parent_id ma è strano perchè nella query è stato definito. Io non sono mai stato bravo con le query: una mano? Grazie mille! Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non ne capisco granché nemmeno io, ma un dubbio mi coglie lo stesso:

    perchè hai
    codice:
    ... FROM zen_categories c, zen_categories_description cd ...
    ossia quegli spazi? Sono ammessi? Io ho sempre pensato che un nome di una tabella non potesse contenere spazi... magari mi sbaglio della grossa, oppure si fa riferimento ad una sintassi a me sconosciuta.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Credo che tecnicamente si chiamino alias.

    In pratica io dico a mysql che la tabella zen_categories nella query la chiamo "c"
    Siccome ci sono più tabelle è possibile che tabelle diverse abbiano nomi di campi uguali (per esempio un campo id!). Allora per riferirmi al campo id di una tabella specifica non scriverò più semplicemente id ma c.id (invece di zen_categories.id). Ecco perchè ci sono gli spazi. Cmq non fa niente. Ho tolto il mod perchè cmq non fnzionava bene. Grazie lo stesso! Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Sì... ma per gli alias non ci va "AS"? E' questo che mi confonde... al di là del fatto che hai risolto "brutalmente"
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Alias si usa per i nomi dei campi.

    Se per esempio hai un campo che si chiama congif.congi_id e un altro che si chiama config2.config<_id puoi fare qualcosa tipo

    c1.config_id as id1, config2.config_id as id2

    Dovrebbe essere così (ma credo proprio sia così).

    Cmq la query non l'ho fatta io ma i programmatori di zen cart.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  6. #6
    l'errore e' chiaro. Non riconosce

    ON c.parent_id=cd2.categories_id

    sicuro che ci sia un "parent_id nella tabella ".TABLE_CATEGORIES." La costante e' valorizzata correttamente?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Lo so che l'errore è chiaro! Per questo non me lo spiego! Cmq si, i campi ci sono e le tabelle sono valorizzate bene (ho controllato più di una volta!). Cmq non fa niente. Ho disinstallato la mod perchè dava problemi pure con l'ssl! Quindi... Bhe, grazie per l'aiuto! Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.