Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768

    [MySql] una SELECT complicata...

    che ora

    allora ho questa tabella:

    id
    cognome
    dipendente_di


    Il campo id è il classico auto_increment;

    cognome non credo si debba spiegare;

    dipendente_di vale "0" se è il proprietario di un'azienda, altrimenti, se è un dipendente prende il valore dell'id relativo

    Es:

    rossi è il titolare dell'azienda x

    avrò, dopo la INSERT:

    id 1;
    cognome rossi;
    dipendente_di 0;


    filippi è il titolare dell'azienda y:

    id 2;
    cognome filippi;
    dipendente_di 0;


    alessandrini è un dipendente dell'azienda x:

    id 3;
    cognome alessandrini;
    dipendente_di 1;


    polisini è un altro dipendente dell'azienda x:

    id 4;
    cognome polisini;
    dipendente_di 1;

    adamoli è un dipendente dell'azienda y:

    id 5;
    cognome adamoli;
    dipendente_di 2;

    ...

    come faccio ad ottenere un output del genere (ordinati alfabeticamente) in una select?


    filippi value=2
    - adamoli value=5
    rossi value=1
    - alessandrini value=3
    - polisini value=4

    :master:
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    think simple think ringo

  3. #3
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    grazie Marketto, l'articolo è interessante ma non posso cambiare la tabella (il sito è già operativo e già applicare queste modifiche non è semplice)

    ho risolto in questo modo, credete che si possa migliorare?

    Codice PHP:

    ### seleziono tutti i dipendenti #######

    $query_dip "SELECT id, dipendente_di, cognome FROM utenti WHERE dipendente_di!=0 ORDER BY cognome";
    $result_dip mysql_query($query_dip) or die("Errore:".mysql_error());

    while (
    $row_dip mysql_fetch_array($result_dip)) {  //elenco dipendenti

           
    ${"dipendenti".$row_dip['dipendente_di']}[$row_dip['id']] = strtolower($row_dip['cognome']);

    }

    #########################################

    $select_utenti "<select name=\"cliente\" id=\"cliente\" onChange=\"this.form.submit();\">\n<option value=\"0\">  -- seleziona cliente --\n";


    ############  lettura UTENTI ###
              
              
    $query "SELECT * FROM utenti WHERE dipendente_di=0 ORDER BY cognome";
              
    $result mysql_query($query) or die("Errore:".mysql_error());

              while (
    $row mysql_fetch_array($result)) {  //elenco clienti
              
                    
    if( $row['id']== $cliente) {
                 
                         
    $select_utenti .= "\n <option value=".$row['id']." selected>".strtoupper($row['cognome'])."\n";
                         
                    }else{
                    
                         
    $select_utenti .= "\n <option value=".$row['id'].">".strtoupper($row['cognome'])."\n";
                         
                    }
                    
                    
    # dipendenti ####
                    
    if( isset(${"dipendenti".$row['id']}) ){
                              foreach(${
    "dipendenti".$row['id']} as $k => $valore){
                                      if(
    $valore!=''){
                                         if(
    $k==$cliente )$select_utenti .= "\n <option value=".$k." selected>- ".$valore."\n"; else $select_utenti .= "\n <option value=".$k.">- ".$valore."\n";
                                      }
                              }
                    }
              
              }
              
              
    $select_utenti .= "\n </select>"
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

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.