Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Mysql - Array - select

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101

    Mysql - Array - select

    Io ho un problemone, dentro una tabella del DB ho dei dati inseriti nel seguente modo:

    Andrea (Gianni), Luca (Luisa), Fabio (Andrea) .... etc

    io dovrei estrapolare questi dati.... e farli aprire in una pagina con delle select in modo che mi escano come <option selected>
    posto il codice:

    Codice PHP:
    <td>Impiegati:  </td>
        </tr>
        <?PHP
    $j 
    0;
    for (
    $j=1$j<=$counter$j++) {
    $employee 'SELECT id, Nome, Cognome, eta FROM azienda';
    $risultati2 mysql_query($employee$db);
    $risultati3 mysql_query($employee$db);

    ?>
        <tr><td></td><td><select name="impiegati<? echo $j?>">
        <?PHP
    while ($row3 mysql_fetch_array($risultati2)) {
    ?>
    <option value="<?=$row3["id"]?>"><?=$row3["Cognome"]?> <?=$row3["Nome"]?> [<?=$row3["eta"]?>]</option>
    <?php
    }
    ?>
    <option selected>-</option>
        </select>
        Tutor:
        <select name="tutori<? echo $j?>">
        <?PHP
    while ($row4 mysql_fetch_array($risultati3)) {
    ?>
    <option value="<?=$row4["id"]?>"><?=$row4["Cognome"]?> <?=$row4["Nome"]?> [<?=$row4["eta"]?>]</option>
    <?php
    }
    ?>
    <option selected value="19">-</option>
        </select>
        </td></tr>
    <?
    }
    ?>

    praticamente dovrebbero uscirmi nel browser 2 <select> dove a destra c'è l'employee e a sinistra il tutor...


    codice:
     
    employee | tutor
    
    Andrea  |  Gianni 
    Luca    |  Luisa 
    Fabio   |  Andrea
    . . .
    . . .
    . . .


    come posso farlo partendo dalla tabella nel DB ??

  2. #2
    forse faresti meglio e creare tre tabelle

    1. impiegati
    2. tutor
    3. relazioni impiegati/tutor
    E' la mia opinione ed io la condivido
    Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
    Scrivi sul muro

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    e.. purtroppo non posso cambiare le tabelle,
    i dati li ricevo in questo modo, una tabella, una riga sola, tutto dentro a un campo unico...
    devo separare i nomi e fare in modo che nella pagina escano come detto sopra...


  4. #4
    continuo a non avere chiara la partenza e l'arrivo

    supponiamo che il valore nome (tutor) sia nel campo Nome della tabella che hai, in questo modo ottieni quello che ti serve?
    codice:
        $tutors = array();
        $employees = array();
        $sql = "SELECT id, Nome, Cognome, eta FROM azienda";
        $result = mysql_query($sql) or die(mysql_error());
        while(list($id, $name, $surname, $age) = mysql_fetch_row($result)) {
              sscanf($name, "%s (%s)", $employee, $tutor);
              $tutors[$id] = $tutor;
              $employees[$id] = "$surname $employee [$age]";
        }
    
        echo "<select name=\"employee\">\n";
        foreach($employees as $id=>$employee) {
               echo "<option value=\"$id\">$employee ({$tutors[$id]})</option>\n";
        }
        echo "</select>\n";
    
        echo "<select name=\"tutor\">\n";
        foreach($tutors as $id=>$tutor) {
               echo "<option value=\"$id\">$tutor</option>\n";
        }
        echo "</select>\n";
    E' la mia opinione ed io la condivido
    Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
    Scrivi sul muro

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    no... dunque... il problema è che io nel campo della tabella del DB ho proprio i dati in questo modo:

    Andrea (Gianni), Luca (Luisa), Fabio (Andrea) .... etc


    scritti tutti nello stesso campo... e devo riuscire a estrapolarli.. separando...

    employee1 (tutor1), employee2 (tutor2), ........

    in modo da avere la <select>

    codice:
     
    
    employee1   |   tutor1
    employee2   |   tutor2
    employee3   |   tutor3
    ...
    ecco un esempio di cosa dovrebbe essere il risultato


    chiaramente nella select poi.. ci sono i nomi di tutti gli impiegati e dei tutor ^... in modo da poter cambiare uno o l'altro...

    mi serve praticamente che quando entro a modificare mi vada a prendere i dati del campo nel DB come visto sopra.. mi espanda il risultato mettendomi come nell'immagine i nomi, cosi che quando io entro...vedo in fila come sono le cose.. e se cambio gli accoppiamenti, poi mi sovrascriva il campo del DB dove è andato in precedenza a leggere i dati iniziali...

  6. #6
    [supersaibal]Originariamente inviato da boomboom69
    forse faresti meglio e creare tre tabelle

    1. impiegati
    2. tutor
    3. relazioni impiegati/tutor [/supersaibal]
    Prendi in considerazione la proposta di boomboom....


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

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    il problema è che non posso... perchè gli impiegati possono a loro volta essere dei tutor... e queste relazioni variano da giornata a giornata e da categoria a categoria..

    il resto funziona tutto... è regolato.. mi manca solo sistemare quesa cosa...

  8. #8
    [supersaibal]Originariamente inviato da Seals
    il problema è che non posso... perchè gli impiegati possono a loro volta essere dei tutor... e queste relazioni variano da giornata a giornata e da categoria a categoria..

    il resto funziona tutto... è regolato.. mi manca solo sistemare quesa cosa... [/supersaibal]
    Puoi metterle come vuoi... l'importante che le info nei campi siano atomiche... cioe' univoche e assolute.

    invece di un campo "Pippo (Pallino)" fai due campi "Pippo" e "Pallino"


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

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    101
    il fatto è che il campo non è:

    pinco (pallino)


    ma è:

    pinco (Pallino), Pinco2 (pallino2), etc....


    come se fosse un testo unico.... non sono diversi campi

    io ho a disposizione una sola row (riga) per tutti i diversi accoppiamenti... perciò non ho altre soluzioni

  10. #10
    [supersaibal]Originariamente inviato da Seals
    il fatto è che il campo non è:

    pinco (pallino)


    ma è:

    pinco (Pallino), Pinco2 (pallino2), etc....


    come se fosse un testo unico.... non sono diversi campi [/supersaibal]
    c'e' una unica a risposta a questo melodramma di tabella ... Ottimizzare... quello non e' un campo ma un file di testo.


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