Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    assegnare variabile in una query

    Come si fa ad assegnare un valore ad una variabile in una query?

    Ad esempio ho bisogno di attribuire il valore dell'id dell'ultima query effettuata ad uan variabile.

    Avevo pensato a questo

    $query6 = "INSERT INTO tab (col1,col2) VALUES('$a',$b=LAST_INSERT_ID())";
    mysql_query($query6, $db)

    ma naturalmente non funziona.

    Grazie
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  2. #2
    Se ti riferisci all'ID di una colonna auto-increment puoi usare la funzione mysql_insert_id() (clicca per maggiori informazioni) che ti restituisce l'ID dell'ultima query INSERT effettuata.

  3. #3
    indipendentemente da quello che mi serve adesso, la mia curiosità è di tipo generale.

    Come si fa ad attribuire un valore ad una variabile in una query??
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  4. #4
    up
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  5. #5
    up
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  6. #6
    Assegnare un valore ad una variabile direttamente in una query non credo si possa fare; correggetemi se sbaglio.

    Ma tanto a cosa ti serve? Nel tuo caso basta che prelevi i due valori col1 e col2 e li assegni con un'altra istruzione alle variabili che vuoi, no?

  7. #7
    Per quello che so LAST_INSERT_ID() funziona solo all'interno di una query per cui se voglio riutilizzare tale valore devo assegnargli un valore.

    Naturalmente posso utilizzare mysql_insert_id() che fa la setssa cosa ma il mio era puro interesse scientifico.
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  8. #8
    Le due funzioni fanno esattamente la stessa cosa, solo che una lo fa in MySql, l'altra lo fa in PHP.

    LAST_INSERT_ID() è una funzione MySql, quindi la puoi usare solamente in un contesto MySql in cui ci sono magari diverse query che vengono eseguite una dopo l'altra. Ad esempio puoi avere una prima query che esegue una INSERT ed una seconda query che esegue una SELECT LAST_INSERT_ID() per ottenere l'ID ottenuto con la precedente INSERT.

    mysql_insert_id() è una funzione PHP e quindi la usi solo in uno script PHP. Ad esempio puoi eseguire prima una bella mysql_query() e poi una mysql_insert_id() per avere l'ID restituito dalla queri di inserimento.


  9. #9
    Ok questo lo sapevo ma resto con il dubbio iniziale :master:
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  10. #10
    Io credo che tu non possa "creare" una variabile PHP grazie ad un assegnamento all'interno di una query MySql, proprio perchè sono due "ambienti di esecuzione" diversi. Le variabili PHP le puoi creare solo all'interno di uno script PHP e quindi solo prima o dopo che una query SQL venga eseguita da MySql.

    Ovviamente sono sempre ben accette le smentite

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.