Visualizzazione dei risultati da 1 a 9 su 9

Discussione: invalid query

  1. #1
    Utente di HTML.it L'avatar di remixe
    Registrato dal
    Aug 2004
    Messaggi
    645

    invalid query

    ciao
    ho un database nel quale ho creato 2 tabelle.
    in ogni tabella ho messo dei campi (i nomi dei campi sono gli stessi in entrambe le tabelle
    che ovviamente hanno nomi diversi).
    Ora il problema sorge quando richiamo con le pagine php questi campi.
    Nella prima tabella avviene tutto regolarmente, nella seconda mi da questo messaggio di errore:

    Invalid query: Unknown column 'coordinatore_nome' in 'field list'

    la cosa è strana in quanto ripeto nella prima tabella non ho problemi, ma solo nella seconda.

    Spero di esser stato preciso nella spiegazione.
    Fatemi saper Thank you
    nessuno

  2. #2
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Dovresti usare gli alias, utili, tra le altre cose, per individuare selettivamente i nomi dei campi simili presenti in più tabelle:

    codice:
    SELECT
    tabella1.campo1 AS c1
    tabella2.campo1 AS c2
    ...

  3. #3
    Utente di HTML.it L'avatar di remixe
    Registrato dal
    Aug 2004
    Messaggi
    645

    re

    ciao Neida,
    quindi mi dici che il mio problema può essere dovutoi ad un conflitto tra campi che seppur
    su tabelle diverse hanno campi simili per nome.
    Come si usano esattamente questi alias?

    fammi saper grazie
    nessuno

  4. #4
    Utente di HTML.it L'avatar di remixe
    Registrato dal
    Aug 2004
    Messaggi
    645

    ..

    immagino che vadano settati all'interno di phpmyadmin
    nessuno

  5. #5
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    L'utilizzo è estremamente semplice, puoi considerarli dei "campi" a tutti gli effetti, fatta eccezione per il nome diverso dall'originale. Li crei direttamente in query, non necessariamente con le select. PhpMyAdmin non serve per questa cosa.

    Un esempio pratico, supponi di avere due tabelle: autori e artisti. In entrambe hai diversi campi tra cui quelli relativi al nome e al cognome. Per recuperare individualmente il campo nome dalle due tabelle dovrai usare un alias, in questo modo:

    codice:
    SELECT
    autori.nome AS nomeAutore,
    artisti.nome AS nomeArtista
    FROM
    autori, artisti
    Per scorrere i risultati tramite gli alias, recuperati dalla query precedente, non dovrai fare nient'altro che trattarli come se fossero dei campi veri e propri.

    Codice PHP:
    while($row mysql_fetch_object($sql)) {
    echo 
    "Autore: $row->nomeAutore - Artista: $row->nomeArtista";


  6. #6
    Utente di HTML.it L'avatar di remixe
    Registrato dal
    Aug 2004
    Messaggi
    645

    re

    vediamo se ho capito dunque io ho questa query (all'interno di una tabella):

    "SELECT id,nome_coordinatore,telefono_coordinatore, fax_coordinatore";


    <?php echo $row['nome_coordinatore'];?>
    <?php echo $row['telefono_coordinatore'];?>
    <?php echo $row['telefono_coordinatore'];?>

    dovrei cambiare il tutto così:

    "SELECT id, nome_coordinatore AS, telefono_coordinatore AS, fax_coordinatore AS";

    <?php echo $row['nome_coordinatore'];?>
    <?php echo $row['telefono_coordinatore'];?>
    <?php echo $row['telefono_coordinatore'];?>

    ho compreso bene?

    Grazie
    nessuno

  7. #7
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    No, non credo tu abbia compreso... forse è colpa mia, sono stato poco chiaro?

    Quando utilizzi gli alias, dopo l'AS devi specificare il nuovo nome da attribuire al campo. Volendo, con sintassi abbreviata, si potrebbe anche omettere AS, indicando direttamente un nome diverso.

    Nell'esempio che hai indicato però non hai bisogno di assegnare ad uno dei campi un nome diverso. Non c'è nessun nome-campo identico nella query che hai postato.

    Recupera e posta la query che stavi utilizzando, isolando la sola parte di codice che genera l'errore nel momento dell'elaborazione dei dati. Proviamo così...

  8. #8
    Utente di HTML.it L'avatar di remixe
    Registrato dal
    Aug 2004
    Messaggi
    645

    re

    ciao Neida,
    è più probabile che sia io che non ho spiegato bene la mia situazione.
    Praticamente io ho una serie di tabelle in un database, e i nomi di queste tabelle sono diversi tra loro,
    però i nomi dei campi che ad esempio sono nella tabella A sono gli stessi della tabella B e magari anche della tabella C.
    Il risultato è che quando richiamo con il php i dati dalla tabella A me li richiama correttamente, mentre nelle altre tabelle mi da quel messaggio di errore che ti dicevo all'inizio.
    Ora il fatto è che io non posso cambiare i nomi dei campi tabella per tabella, quindi devo trovare unoo stratagemma per far funzionare lo stesso il tutto.
    Come posso fare?

    Grazie ancora

    remixe
    nessuno

  9. #9
    Utente di HTML.it L'avatar di remixe
    Registrato dal
    Aug 2004
    Messaggi
    645

    re

    ..ops scusa ancora mi sono dimenticato di aggiungere una cosa
    e cioè che nin devo richiamare i campi presenti nelle varie tabelle tutti con la stessa pagina php.
    In realta ho una pagina php per ogni tabella.

    nessuno

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.