Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439

    [php] help mysql_insert_id()

    Codice PHP:
                MAN_table
                
    +++++++++++++++++
                + 
    ID        +
                +++++++++++++++++
                
                
    SEDEMAN_table
                
    +++++++++++++++++
                + 
    ID        +
                + 
    ID_MAN    +
                +++++++++++++++++
                
                
    DATIMAN_table
                
    +++++++++++++++++
                + 
    ID        +
                + 
    ID_MAN    +
                + 
    ID_SEDEMAN    +
                +++++++++++++++++ 
    Salve,
    ho tre tabelle strutturate come sopra (ovviamente ci sono altri campi ma ho scritto x semplicità solo gli id perchè sono il mio problema).

    Inserisco i dati in questa tabella tramite 3 o più query.
    La query numero1 nella MAN_table -> ok.
    La query numero2 nella SEDEMAN_table:
    per questa l'ID_MAN lo recupero con mysql_insert_id() così si ricollega alla query precedente. -> ok
    La/e query numero3 sono una o più.
    Ossia tramite un'interrograzione diciamo di tirare fuori x dati. Con un foreach($dati_aggiuntivi as $k => $v) { inserisco questi x dati nella tabella DATIMAN_table. Il problema è nel recuperare gli id.
    All'interno del loop ID_MAN e ID_SEDEMAN sono sempre gli stessi ma come li recupero?
    わさび

  2. #2
    non mi e' chiarissimo... provo.

    come sai l'id inserito lo devi estrarre "prima" di fare un'altro INSERT. ti viene restituito sempre e solo l'ultimo inserito.

    Se il tuo problema e' recuperare gli id inseriti nel ciclo foreach, allora devi metterli in un array...

    foreach
    insert
    $id[] = mysql_insert_id()

    oppure non ho capito il problema...

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

  3. #3
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439
    Ciao piero.mac,
    Si, in pratica i dati provengono da una query e devo inserirli in 3 tabelle.
    per la prima nessun problema
    nella seconda devo inserire un riferimento alla prima
    e nella terza, la + complessa, devo inserire un riferimento alla prima e alla seconda. Il fatto è che la terza è all'interno di un ciclo, quindi potenzialmente potrei avere più terze query che inseriscono dati.
    Gli id di riferimento delle terze query (x la 3a tabella) fanno sempre riferimento alla prima e alla seconda.
    Quindi se devo associare un valore a una variabile, questo dovrebbe essere fatto fuori del loop...
    わさび

  4. #4
    ok allora e' semplice..

    estrai la prima come $id1, la seconda come $id2 e poi questi valori li usi nella/e INSERT del foreach...
    non c'e' problema...

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

  5. #5
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439
    [supersaibal]Originariamente inviato da piero.mac
    ok allora e' semplice..

    estrai la prima come $id1, la seconda come $id2 e poi questi valori li usi nella/e INSERT del foreach...
    non c'e' problema... [/supersaibal]
    Cioè qualcosa del genere?
    Codice PHP:
    mysql_query("INSERT INTO MAN_table [...]"$conn);
    $id1 mysql_insert_id();

    mysql_query("INSERT INTO SEDEMAN_table (`man_id`) VALUES ($id1) [...]"$conn);
    $id2 mysql_insert_id();

    mysql_query("INSERT INTO DATIMAN_table (`man_id`, `sedeman_id`) VALUES ($id1$id2) [...]"$conn); 
    わさび

  6. #6
    yes SIR!!


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

  7. #7
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439
    [supersaibal]Originariamente inviato da piero.mac
    yes SIR!!

    [/supersaibal]
    Thanx Sir!
    わさび

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.