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

    codice controllo numero raccomandate

    ciao a tutti,

    sto cercando da un paio di giorni di trovare una classe (o almeno il metodo) per calcolare il codice di controllo delle raccomandate ar

    ho trovato questo http://gipasoft.blogspot.com/2009/02...l-barcode.html scritto in c# ma non conoscendo il linguaggio sono in difficoltà

    qualcuno sa come si calcola o a una classe in php che fa questo?

    oppure riesce a riscrivere la classe che ho indicato sopra da c# a php?

    grazie anticipatamente per l'eventuale interessamento

  2. #2
    Dovrebbe essere una cosa di questo tipo:

    Codice PHP:
    <?php 

    function check_digit($code$append true) {
        
        if (
    strlen($code) !== 11) {
            return 
    false;
        }
        
        
    $total 0;
        
        for (
    $i 0$i 11$i++) {
            if (
    $i == 0) {
                
    $total += (int)$code[$i];
            } else {
                
    $total += (int)$code[$i] * 11;
            }
        }
        
        
    $string = (string)$total;

        
    $total 0;

        
    $count strlen($string);
        for(
    $i 0$i $count$i++) {
            
    $total += (int)$string[$i];
        }
        
        
    $result $total 10;

        return 
    $append $code $result $result;
    }

    print 
    check_digit('13586854035');

    ?>
    Non avendo la descrizione dell'algoritmo ne dei valori di test, non posso garantire l'affidabilità.

    Edit: errata corrige, piccolo errore
    Edit 2: l'ho provato con due codici di raccomandate e sembra funzionare correttamente.

  3. #3
    Originariamente inviato da filippo.toso
    Dovrebbe essere una cosa di questo tipo:

    Codice PHP:
    <?php 

    function check_digit($code$append true) {
        
        if (
    strlen($code) !== 11) {
            return 
    false;
        }
        
        
    $total 0;
        
        for (
    $i 0$i 11$i++) {
            if (
    $i == 0) {
                
    $total += (int)$code[$i];
            } else {
                
    $total += (int)$code[$i] * 11;
            }
        }
        
        
    $string = (string)$total;

        
    $total 0;

        
    $count strlen($string);
        for(
    $i 0$i $count$i++) {
            
    $total += (int)$string[$i];
        }
        
        
    $result $total 10;

        return 
    $append $code $result $result;
    }

    print 
    check_digit('13586854035');

    ?>
    Non avendo la descrizione dell'algoritmo ne dei valori di test, non posso garantire l'affidabilità.

    Edit: errata corrige, piccolo errore
    Edit 2: l'ho provato con due codici di raccomandate e sembra funzionare correttamente.
    grazie mille, sembra proprio funzionare benissimo

    ciao e grazie ancora

  4. #4
    Originariamente inviato da filippo.toso
    Dovrebbe essere una cosa di questo tipo:

    Codice PHP:
    <?php 

    function check_digit($code$append true) {
        
        if (
    strlen($code) !== 11) {
            return 
    false;
        }
        
        
    $total 0;
        
        for (
    $i 0$i 11$i++) {
            if (
    $i == 0) {
                
    $total += (int)$code[$i];
            } else {
                
    $total += (int)$code[$i] * 11;
            }
        }
        
        
    $string = (string)$total;

        
    $total 0;

        
    $count strlen($string);
        for(
    $i 0$i $count$i++) {
            
    $total += (int)$string[$i];
        }
        
        
    $result $total 10;

        return 
    $append $code $result $result;
    }

    print 
    check_digit('13586854035');

    ?>
    Non avendo la descrizione dell'algoritmo ne dei valori di test, non posso garantire l'affidabilità.

    Edit: errata corrige, piccolo errore
    Edit 2: l'ho provato con due codici di raccomandate e sembra funzionare correttamente.
    questa è la conversione anche con javascript, magari può servire a qualcuno:

    function check_digit(code, append) {

    if (code.length !== 11) {
    return false;
    }

    total = 0;

    for (var i = 0; i < 11; i++) {
    if (i % 2 == 0) {
    total+=parseInt(code.substring(i, i+1));
    } else {
    total+=parseInt(code.substring(i, i+1)) * 11;
    }
    }

    stringa_total = String(total);

    total = 0;

    count = stringa_total.length;
    for(var i = 0; i < count; i++) {
    total += parseInt(parseInt(stringa_total.substring(i, i+1)));
    }

    result = total % 10;

    return append ? parseInt(code.result) : parseInt(result);
    }

  5. #5
    Anch'io sono alla ricerca del modo di calcolare il codice di controllo delle raccomandate esiste un algoritmo, da implementare per esempio in un foglio di exel?

    Grazie

  6. #6
    Originariamente inviato da ttruciolo
    Anch'io sono alla ricerca del modo di calcolare il codice di controllo delle raccomandate esiste un algoritmo, da implementare per esempio in un foglio di exel?

    Grazie
    l'algoritmo è quello che si evince dai codici php e javascript che si leggono nei post precedenti

    bisogna riscriverlo usando però VBA Visual Basic For application (il linguaggio che usa access per intenderci)

    magari in rete c'è già qualcosa di fatto, però questo non è il forum giusto per questo linguaggio, quindi chiuderei qua il post

    ciao

  7. #7
    Ok grazie.. non sono esperto speravo di trovare qualche cosa di utile qui, que codici non mi dicono nulla.

    Comunque grazie caio

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.