Ciao a tutti
avendo bisogno di ottenere l'Id dell'insert che ho appena effettuato ho consultato la guida php-mysql ed ho trovato le due istruzioni indicate nel titolo.
Solo che i risultati che ottengo non coincidono con quanto ho trovato nella guida perché ho letto:
Quindi, siccome il mio ID è un "bigint" ho cercato di usare "SELECT LAST_INSERT_ID()".Avviso mysql_insert_id() converte il tipo restituito dalla funzione nativa dell'API C di MySQL mysql_insert_id() al tipo long (chiamata int nel PHP). Se la colonna AUTO_INCREMENT è del tipo BIGINT, il valore restituito da mysql_insert_id() sarà inesatto. In questo caso si usi la funzione SQL di MySQL LAST_INSERT_ID() in una query SQL.
Il problema è che invece di restituirmi un numero mi viene fuori qualcosa tipo: "Resource id #5" dove inoltre il numero finale non è quello dell'Id inserito.
Al contrario se uso mysql_insert_id() mi viene restituito il numero giusto ma, dato l'avviso di non utilizzare questa istruzione, non credo di poterci fare affidamento.
Insomma sono in un vicolo cieco e non so cosa fare![]()
Accetto qualsiasi suggerimento.
Grazie in anticipo
Edit:
Ma se usassi mysqli_insert_id potrei superare il problema del bigint?
Per usare mysqli_insert_id devo riscrivere il tutto il codice php che usa mysql ed usare per tutto mysqli, oppure posso "infilare" l'istruzione mysqli_insert_id nel contesto in cui uso il vecchio mysql?
Grazie ancora