• Moderatore

    Inserimento simultaneo in più tabelle

    Ciao a tutti,

    vorrei inserire dei dati che hanno lo stesso id simultaneamente in 2 tabelle, ma non riesco: l' inserimento riesce senza problemi, ma il campo id (chiave per entrambe le tabelle) che dovrebbe essere uguale in entrambe le tabelle viene inserito diverso (l' autoincrement è attivo)

    Ecco il codice col quale pensavo di riuscire nel mio intento:

    
    $connessione = mysql_connect($nome_host,$nome_utente,$pass_utente)or die("Connessione non riuscita: " . mysql_error());
    mysql_select_db($nome_database, $connessione) or die("Errore nella selezione del database");
    
    $insert = "INSERT INTO ragazzi ($stringa) VALUES ('$nomeurl', '$nome', '$eta', '$cell', '$mail', '$msn')";
    $insert1 = "INSERT INTO ragazzi_citta (base) VALUES ('$base')";
    
    $query = mysql_query($insert) or die (mysql_error());
    $query1 = mysql_query($insert1) or die (mysql_error());
    
    mysql_close($connessione); 
    
    

    Ho anche provato ad inserire questa premessa per collegare il campo id:

    
    $querya =  mysql_query("SELECT * FROM ragazzi INNER JOIN ragazzi_citta USING (Id);",$connessione);
    
    

    ma il risultato non cambia
    Dove sbaglio?

    Ho pensato che la soluzione potrebbe essere un update del campo id nella seconda tabella dopo l' inserimento ma non saprei come impostarlo...


  • Moderatore

    Problema Risolto:
    la soluzione era la funzione insert_id

    Scrivo il codice corretto nel caso possa servire ad altri in futuro:

    
    $insert = "INSERT INTO ragazzi ($stringa) VALUES ('$nomeurl', '$nome', '$eta', '$cell', '$mail', '$msn')";
    $query = mysql_query($insert) or die (mysql_error());
    
    **$id= mysql_insert_id();**
    $insert1 = "INSERT INTO ragazzi_citta (Id, base) VALUES ('$id', '$base')";
    $query1 = mysql_query($insert1) or die (mysql_error());