login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Snippets > EAN 13 code checker

EAN 13 code checker

Auteur: BigTeddy - 02 september 2004 - 01:24 - Gekeurd door: Dennisvb - Hits: 5754 - Aantal punten: 1.25 (2 stemmen)



Ik had nog enkel kleine scriptje liggen die ik ooit eens had gemaakt naar een voorbeeld uit Turbo Pascal (kan ik ook nix aan doen hé) die we op school hadden gekregen.

Dit is 1 van de vélé, ik hoop dat er iemand nog iets aan heeft ;)

Dit scriptje controleerd of een EAN 13 code juist is.
Dit scriptje werkt doormiddel van een functie, het script kan direct gedraaid worden.

Code:
De functie ...

  1. <?
  2. function ean13_check($ean13)
  3. {
  4. global $_POST;
  5.  
  6. if(isset($_POST['controleer_code']))
  7. {
  8. $ean13_code = array();
  9. $plus_pos = array();
  10. $plus_neg = array();
  11.  
  12. for($tel=-1; $tel<strlen($ean13); $tel++)
  13. {$ean13_code[] = substr($ean13, $tel, 1);}
  14.  
  15. for($i=1; $i<strlen($ean13); $i++)
  16. {
  17. $deel_van_pn = $i/2;
  18. if(!ereg("[.]",$deel_van_pn)){$plus_pos[] = $ean13_code[$i];}
  19. elseif(ereg("[.]",$deel_van_pn)){$plus_neg[] = $ean13_code[$i];}
  20. }
  21.  
  22. for($tel_pos=0, $tot_plus_pos=0; $tel_pos<sizeof($plus_pos); $tel_pos++)
  23. {$tot_plus_pos += $plus_pos[$tel_pos];}
  24. for($tel_neg=0, $tot_plus_neg=0; $tel_neg<sizeof($plus_neg); $tel_neg++)
  25. {$tot_plus_neg += $plus_neg[$tel_neg];}
  26.  
  27. $tot_som = ($tot_plus_pos*3)+$tot_plus_neg;
  28.  
  29. $eenheid_nog_lengte=strlen($tot_som)-1;
  30. $al_voor_tiental=substr($tot_som, $eenheid_nog_lengte, 1);
  31.  
  32. if(10-$al_voor_tiental == $ean13_code[$ean13_lengte])
  33. {echo "De code is aanvaard.";}
  34. else
  35. {echo "De code is niet correct.";}
  36. }
  37.  
  38. elseif(!isset($_POST['controleer_code']) || strlen($ean13) <> 13)
  39. {echo "Je hebt geen EAN 13 code ingevoerd.";}
  40. }
  41. ?>


Voorbeeldpagina
  1. <center>
  2. <FORM METHOD=POST ACTION=''>
  3. Voer de EAN 13 code in<br />
  4. <INPUT TYPE='text' NAME='ean13'><br />
  5. vb: 9789026034541
  6. <br /><br />
  7. <INPUT TYPE='submit' NAME='controleer_code' VALUE='Controleer'>
  8. </FORM>
  9. </center>
  10. <hr /><br />
  11.  
  12. <? ean13_check($_POST['ean13']); ?>
Download code! Download code (.txt)

 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (5)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.029s