Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 30
  1. #11
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    Hai ragione,
    tolta la virgola ecco che esce fuori

    Tabella/alias non unico: 'eventi'


  2. #12
    Originariamente inviato da marckhh
    Hai ragione,
    tolta la virgola ecco che esce fuori

    Tabella/alias non unico: 'eventi'

    dichiari due volte la stessa tabella "eventi"

    codice:
    FROM eventi
    INNER JOIN ordini ON ordini.utente_id = utenti.utente_id
    INNER JOIN eventi ON eventi.event_id = ordini.event_id
    prova cosi':

    codice:
    FROM utenti
    INNER JOIN ordini ON ordini.utente_id = utenti.utente_id
    INNER JOIN eventi ON eventi.event_id = ordini.event_id

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

  3. #13
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    Ho provato,
    mi esce questo

    Colonna: 'event_id' di order clause e` ambigua

  4. #14
    Originariamente inviato da marckhh
    Ho provato,
    mi esce questo

    Colonna: 'event_id' di order clause e` ambigua
    ellapeppa....

    mettici anche la tabella. Ma dare un'occhiata a cosa hai scritto e a cosa ti viene segnalato???

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

  5. #15
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    Hai ragione,
    ho aggiunto Order by eventi.event_id Desc e funziona. Ma non come vorrei. Posto il resto del codice:

    Codice PHP:
    $query mysql_query("SELECT utenti.*, eventi.*, ordini.*
    FROM utenti
    INNER JOIN ordini ON ordini.utente_id = utenti.utente_id
    INNER JOIN eventi ON eventi.event_id = ordini.event_id 
    WHERE eventi.event_id ='"
    .$_GET['id']."' Order by eventi.event_id Desc"
               or die( 
    mysql_error() . "
    $sql);

    $str '<table border=0 bordercolor=#000000>'
    $str.= '<thead>'
    $str.= '<tr>'
    $str.= '<th style=\'padding-right:20px;\'>Nome</th>';  
    $str.= '</tr>'
    $str.= '</thead>'
    $str.= '<tbody>'

    while(
    $results mysql_fetch_array($query)) {

            
    $str.='<tr>'
            
    $str.='<td style=\'padding-right:20px; text-align:center\'>'.$results['nome'].'</td>';
            
    $str.='</tr>'
             

    $str.= '</tbody>'
    $str.= '</table>'
    echo 
    $str;


    ?> 
    praticamente che accade? che nel nome dell'utente che ha acquistato tot. biglietti per quell'evento appare sempre lo stesso nome. Esempio. Marco effettua 2 acquisti per l'evento 10. Sara ne acquista 3 sempre per l'evento 10. Il risultato del ciclo mi da sempre marco. Perchè?

    p.s. aggiungo che i dati relativi agli ordini sono nella tabella ordini

  6. #16
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    DA questa query non ne bengo a capo.......

  7. #17
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    Nessuna idea?

    Aggiungo che mi da sempre soltanto due risultati, cioè, nell'esempio citato prima, il solo nome di Marco. E se per esempio faccio l'acquisto di due biglietti con due nomi diversi, estraendo anche la somma dei biglietti mi da due, ma sempre intestati a Marco. Non Marco e Sara.

  8. #18
    Lasciando perdere la formattazione che fai della tabella html. Apri la table prima del while e poi la chiudi dentro al ciclo while....

    Allora, fai una prova tanto per capire se il problema e' nella query oppure nella stampa del result set.

    Codice PHP:
    $query mysql_query("SELECT *
                        FROM utenti
                        INNER JOIN ordini ON ordini.utente_id = utenti.utente_id
                        INNER JOIN eventi ON eventi.event_id = ordini.event_id
                        WHERE eventi.event_id ='"
    .$_GET['id']."' 
                        Order by eventi.event_id Desc"
    )
                        or die( 
    mysql_error() . "
    $sql);

    while(
    $results mysql_fetch_array($query)) {

            echo 
    $results['nome'].'
    '
    ;

    }
    }
    ?> 
    e metti select * visto che comunque raccogli tutti i campi. Tieni presente che campi con lo stesso nome saranno sovrascritti

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

  9. #19
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    Niente,
    ho provato ma mi da sempre lo stesso risultato, ossia:

    Nome Numero biglietti
    ivan 1
    Nome Numero biglietti
    ivan 1


    Soltanto che il secondo record mi dovrebbe dare sara e poi 1. Invece mi prende sempre il primo utente che ha effettuato l'acquisto. E la cosa curiosa che anche se gli acquisti sono più di due i records del risultato sono sempre 2!!!!

  10. #20
    Originariamente inviato da marckhh
    Niente,
    ho provato ma mi da sempre lo stesso risultato, ossia:

    Nome Numero biglietti
    ivan 1
    Nome Numero biglietti
    ivan 1


    Soltanto che il secondo record mi dovrebbe dare sara e poi 1. Invece mi prende sempre il primo utente che ha effettuato l'acquisto. E la cosa curiosa che anche se gli acquisti sono più di due i records del risultato sono sempre 2!!!!
    evidentemente il where pone dei limiti alla tua ricerca. Prova senza mettere il where.

    eventi.event_id e' una chiave primaria e quindi hai solo un record che corrisponde a $_GET['id']

    quindi il fatto che ne ricevi due (di record) significa che la query non e' impostata correttamente.



    @ edit... meglio che ti preciso una cosa. Io ti do suggerimenti come sbloccare il tuo problema, non la soluzione. I dati li hai tu e come li gestisce pure.

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

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 © 2026 vBulletin Solutions, Inc. All rights reserved.