Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    577

    MYSQL duplicati non ammessi

    Ciao a tutti,

    in un db MYSQL c'è la possibilità, in fase di creazione di un campo, di indicare l'univocità dei valori durante l'inserimento ?

    La proprietà "Duplicati non ammessi" di Access in pratica.

    Grazie

    Lucia

  2. #2
    non so se ho capito bene perché non ho ben presente come funziona access, però credo che puoi farlo inserendo una colonna "id" che si autoincremente, così non c'è possibilità che due righe abbiano lo stesso id...

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    577
    OK per l'id, ma metti il caso che io non debba permettere di inserire uno username uguale ad un altro già esistente nel db.

  4. #4
    gli fai un controllo del tipo: in un ciclo che scorre tutti i valori della colonna username, gli fai controllare se il valore inserito da te è uguale a uno di quelli già scritti, se è uguale $controllo = 1, se no $controllo = 0 e poi verifichi con if ($controllo).

    è un po' rozzo come metodo, però dal punto di vista logico non fa una piega...






































    ...credo

  5. #5
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Originariamente inviato da pugia
    gli fai un controllo del tipo: in un ciclo che scorre tutti i valori della colonna username, gli fai controllare se il valore inserito da te è uguale a uno di quelli già scritti, se è uguale $controllo = 1, se no $controllo = 0 e poi verifichi con if ($controllo).

    è un po' rozzo come metodo, però dal punto di vista logico non fa una piega...


    ...credo
    Beh...per vedere se un username già esiste farei una query di questo genere SELECT * FROM nometabella WHERE username = "toto"
    Se i risultati sn uguali a 0, non esiste nessun toto, altrimenti manda un messaggio di errore o qlk del genere

  6. #6
    come intendevo io serve solo una query, e poi non genera errori maiessequellici... :di56:

  7. #7
    adesso provo a scriverti il codice...

  8. #8
    se non c'è nessun campo uguale mysql non da mica errore..

  9. #9
    Codice PHP:
    $user "prova";

    $query " SELECT 'username' FROM table";
    $result mysql_query($query) or die (mysql_error());

    $elenco = array();
    while(
    $row mysql_fetch_array($result))
    {
    $elenco[] = $row['username'];
    }

    for (
    $x 0$x < (count($elenco)); $x++)
     {
      if (
    $elenco[$x] == $user) { $controllo 1; }
                           else { 
    $controllo 0; }
     }
    if (
    $controllo) { echo "Il nome utente esiste già"; }
               else { echo 
    "Nome utente valido"; } 
    non l'ho provato perché non ho avuto tempo, ma credo che sia una discreta base su cui lavorare...

    ciao

  10. #10
    ma troppo casino meglio fare un select .. è fatto apposta

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 © 2024 vBulletin Solutions, Inc. All rights reserved.