Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    stesso id tabelle diverse

    salve ho un problema con il mio database.

    vorrei fare una cosa del genere.

    allora ho 2 tabelle
    1) utenti
    2) immagini

    ognuna con i suoi campi, ora vorrei fare in modo che in entrambe le tabelle ci sia un id univoco per entrambe, come posso fare?
    forse sarà demente come domanda ma riesco a capire le guide

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209
    vorresti associare alla tab img l'id della tabella utenti???

  3. #3
    Utente bannato
    Registrato dal
    Apr 2009
    Messaggi
    530
    Lui ha queste due tabelle nel database, ogni tabella ha i propri campi/colonne: tra questi, c'è in entrambe il campo id che viene numerato con l' AUTO INCREMENT.
    Ora vorrebbe ritrovarsi un numero di id "parallelo" per estrarre in base a questo i dati appaiati da entrambe le tabelle.

    Si tratta in definitiva, quando fa la query per INSERT in una tabella, di fare una query INSERT anche per l' altra; eventualmente, con dei Valori vuoti o NULL.
    Potranno tornare utili degli if-statement, forse; ma di più non posso indovinare ...

  4. #4

    Re: stesso id tabelle diverse

    Originariamente inviato da Fabyo88
    salve ho un problema con il mio database.

    vorrei fare una cosa del genere.

    allora ho 2 tabelle
    1) utenti
    2) immagini

    ognuna con i suoi campi, ora vorrei fare in modo che in entrambe le tabelle ci sia un id univoco per entrambe, come posso fare?
    forse sarà demente come domanda ma riesco a capire le guide
    l'id chiave primaria e' univoco per definizione. Se intendi dire una chiave primaria con lo stesso valore non hai altra scelta che inserire un record su utenti, leggere l'id autoincrement assegnato e utilizzarlo nell'insert di immagini.

    Ma non e' corretto proprio come definizione. L'id univoco serve ad identificare il record. Se vuoi associarlo ad altro campo di altra tabella lo dovresti associare ad un campo indicizzato ma che non sia chiave primaria. Questo perche' potresti avere piu' immagini associate all'utente oppure piu' utenti che usano la stessa immagine ed una chiave primaria non permetterebbe di avere piu' valori uguali nella stessa tabella.

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

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209
    Se ho capito bene dovresti creare un db utenti e un db foto

    db utenti

    idutente nome cognome mail eccc

    db foto

    idfoto(chiave primaria) idutente foto

    al momento della query di inserimento della foto dovresti inviare al db
    l'idutente (prelevato con un query di di selezione)

    select idutente from utenti where idutente='$condizione'

    ps $condizione= "*"(* qualcosa che identifica l'utente tipo l'user o la mail solo che dovresti far logare l'utente)

    fatto questo hai l'idutente e puoi fare una query di inserimento

    insert into foto (idutente,foto)values('$idutente','$foto')

    Spero di essere stato di aiuto

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    se l'esigenza è appunto di avere un id che va "in parallelo" puoi fare:

    1) (se puoi fare l'inserimento sempre partendo da una delle due tabelle) impostare in una tabella un ID automatico e nell'altra invece un campo ID NON automatico. Fai l'inserimento nella prima tabella, prelevi l'id appena creato (es.: mysql_insert_id()) e poi fai l'inserimento nella seconda passando "manualmente" questo id;
    2) (se non puoi fare come sopra) puoi creare in entrambe un ID NON automatico e lo generi direttamente da PHP usandolo in entrambi gli inserimenti; questo è anche "più semplice" in un certo senso. Inoltre puoi usare un campo non necessariamente numerico (potresti usare la funzione PHP uniqid() per esempio). Tieni anche presente che se già gli utenti hanno un qualche campo distintivo (es.: l'indirizzo mail) ti conviene usare direttamente questo come chiave.

    in entrambi i casi sarebbe corretto definire il campo ID come univoco e come chiave, anche se in realtà potresti sfruttare la possibilità di inserirlo "manualmente" per creare associazioni multiple (per esempio ad ogni utente più immagini).

    (Fermo restando che da un punto di vista della "purezza" non è un database particolarmente ben strutturato...)

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.