Visualizzazione dei risultati da 1 a 7 su 7

Discussione: chiave primaria

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323

    chiave primaria

    Salve a tutti. io ho un database che deve memorizzare un codice.
    il codice é il seguente:

    AA 05 - 0101

    le prime due lettere fisse
    05 é anno (in questo caso 2005)
    0101 é numero progressivo.

    La mia domanda é come posso fare in php un controllo del genere:
    - se l'anno cambia la prima matricola ha numero 0101
    - altrimnti matricola++

    Questo va memorizzato in un DB


    Es. matricole del 2006 e due matricole prodotte sono
    AA 06 - 0101
    AA 06 - 0102
    Cambia l'anno , 2007 e le matricole sono
    AA 07 - 0101
    AA 07 - 0102
    AA 07 - 0103
    ....

    grazie a tutti dell'attenzione

  2. #2
    Puoi provare a seguire questo schema:
    [list=1][*]Memorizzi il tutto in un db sotto forma di stringa;[*]Prelevi la stringa che contiene i dati nel formato AA 05 - 0101 e memorizzi il tutto in una variabile (ad es.: $dati)[*]Usi la funzione explode per la stringa in questo modo $data = explode(" ", $dati);[*]Incrementi la parte che ti interessa in questo modo: $data[3] += 1;[*]Usi la funzione implode: $stringa = implode(" ", $data);[*]Aggiorni nel db la stringa che hai appena modificato [/list=1]
    <!-- Debian GNU/Linux 4.0 Kernel 2.6.x -->
    ftp://ftp.it.debian.org/
    http://www.php.net/

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    grazie mille per l'aiuto

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    c'é un problema con i numeri in quanto se memorizzo numeri che iniziano con lo 0 (zero), mysql me li tronca.
    se memorizzo 0101, mi memorizza 101

    aiuto

  5. #5
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    invece che usare int usi char o varchar

  6. #6
    Originariamente inviato da goxpix
    c'é un problema con i numeri in quanto se memorizzo numeri che iniziano con lo 0 (zero), mysql me li tronca.
    se memorizzo 0101, mi memorizza 101

    aiuto
    imposta il campo come zero fill... controlla anche le funzioni di php relative alla formattazione dei numeri, mi sa che il problema è di php più che di mysql

    <!-- Debian GNU/Linux 4.0 Kernel 2.6.x -->
    ftp://ftp.it.debian.org/
    http://www.php.net/

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    grazie, ora funziona correttamente

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.