BlackBoard » Design, Programmierung & Entwicklung » Programmieren » PHP SozialversicherungsNR » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen SozialversicherungsNR
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
ColdFire ColdFire ist männlich
BlackBoarder


Dabei seit: 08.06.2002
Beiträge: 986

SozialversicherungsNR       Zum Anfang der Seite springen

Hy Coder...

Wollte mal wissen ob jemand eine fertige funktion für mich hat zum checken der sozialversicherungsNR:

Like:

http://www2.argedaten.at/static/svnr.html

mfg CF
02.03.2007 17:54 ColdFire ist offline E-Mail an ColdFire senden Beiträge von ColdFire suchen
phlox81 phlox81 ist männlich
Bote des Lichts und Moderator


images/avatars/avatar-2264.jpg

Dabei seit: 19.10.2002
Beiträge: 3.028
Herkunft: Irgendwo im Nirgendwo

      Zum Anfang der Seite springen

Könnte man mit einer RegEx prüfen, evtl. mal über Google suchen, ob sich da was finden.

__________________
Intelligenz ist eine Illusion des Menschen

phlox81.de | codenode.de
02.03.2007 18:08 phlox81 ist offline E-Mail an phlox81 senden Homepage von phlox81 Beiträge von phlox81 suchen
LX LX ist männlich
El Comandante en Jefe


images/avatars/avatar-2290.gif

Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx

Achtung       Zum Anfang der Seite springen

Mit einer RegEx bekommt man zumindest das Format geprüft, die Prüfziffer am Ende ist da schon schwieriger. Hier gibt's eine Prüfziffernberechnung dafür.

__________________
JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard

"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett

02.03.2007 18:23 LX ist offline E-Mail an LX senden Homepage von LX Beiträge von LX suchen
ColdFire ColdFire ist männlich
BlackBoarder


Dabei seit: 08.06.2002
Beiträge: 986

Themenstarter Thema begonnen von ColdFire
      Zum Anfang der Seite springen

Nunja es ist nur leider das thema mit den prüfziffern...

Es wird doch möglich sein dass jemand eine vernünftige funktion gecodet hat und diese auch freigibt !

lg CF
02.03.2007 18:26 ColdFire ist offline E-Mail an ColdFire senden Beiträge von ColdFire suchen
Cpt.Miller Cpt.Miller ist männlich
BlackBoarder


Dabei seit: 14.08.2003
Beiträge: 644
Herkunft: Stuttgart

      Zum Anfang der Seite springen

Also ich habs gerad mal in Python gelöst, allerdings sehr unschön smile .

Du brauchst es in PHP richtig? Dann könnte ich es dir auch coden, wenn du es brauchst.

EDIT:
Wobei ich schon glaube, dass es sowas bereits fertig gibt.
Google mal kräftig.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Cpt.Miller: 02.03.2007 21:43.

02.03.2007 21:36 Cpt.Miller ist offline E-Mail an Cpt.Miller senden Homepage von Cpt.Miller Beiträge von Cpt.Miller suchen
ColdFire ColdFire ist männlich
BlackBoarder


Dabei seit: 08.06.2002
Beiträge: 986

Themenstarter Thema begonnen von ColdFire
      Zum Anfang der Seite springen

Ja währe nice wennst dus für php lösen könntest...

googlen nützt nichts im punkto free code..

lg CF
Kann dieser code funktionieren:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4: */
// +----------------------------------------------------------------------+
// | PHP Version 4                                                        |
// +----------------------------------------------------------------------+
// | Copyright (c) 1997-2003 The PHP Group                                |
// +----------------------------------------------------------------------+
// | This source file is subject to version 3.0 of the PHP license,       |
// | that is bundled with this package in the file LICENSE, and is        |
// | available through the world-wide-web at the following url:           |
// | http://www.php.net/license/3_0.txt.                                  |
// | If you did not receive a copy of the PHP license and are unable to   |
// | obtain it through the world-wide-web, please send a note to          |
// | license@php.net so we can mail you a copy immediately.               |
// +----------------------------------------------------------------------+
// | Copyright (c) 2003 Michael Wallner <mike@iworks.at>                  |
// +----------------------------------------------------------------------+
//
// $Id: AT.php,v 1.1 2005/03/07 21:00:53 krabu Exp $

/**
* Requires Validate
*/
require_once('Validate.php');

/**
* Validate_AT
*
* @author       Michael Wallner <mike@php.net>
* @package      Validate
* @category     PHP
*
* @version      $Revision: 1.1 $
* @access       public
*/
class Validate_AT
{
    /**
    * Validate postcode ("Postleitzahl")
    *
    * @static
    * @access   public
    * @param    string  postcode to validate
    * @param    bool    optional; strong checks (e.g. against a list of postcodes)
    * @return   bool    true if postcode is ok, false otherwise
    */
    function postcode($postcode, $strong=false)
    {
        if ($strong) {
            static $postcodes;
    
            if (!isset($postcodes)) {
                $file = '/usr/share/pear/data/Validate/AT_postcodes.txt';
                $postcodes = array_map('trim', file($file));
            }
    
            return in_array((int) $postcode, $postcodes);
        } else {
            return (ereg('^[0-9]{4}$', $postcode));
        }
    }

    /**
    * Validate SSN
    *
    * "Sozialversicherungsnummer"
    *
    * @static
    * @access   public
    * @param    string  $svn
    * @return   bool
    */
    function ssn($svn)
    {
        $matched = preg_match(
            '/^(\d{3})(\d)\D*(\d{2})\D*(\d{2})\D*(\d{2})$/',
            $svn,
            $matches
        );

        if (!$matched) {
            return false;
        }

        list(, $num, $chk, $d, $m, $y) = $matches;

        if (!Validate::date("$d-$m-$y", array('format' => '%d-%m-%y'))) {
            return false;
        }

        $str = (string) $num . $chk . $d . $m . $y;
        $len = strlen($str);
        $fkt = '3790584216';
        $sum = 0;

        for ($i = 0; $i < $len; $i++) {
            $sum += $str{$i} * $fkt{$i};
        }

        $sum = $sum % 11;
        if ($sum == 10) {
            $sum = 0;
        }

        return ($sum == $chk);
    }
}
?>

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von ColdFire: 03.03.2007 15:37.

03.03.2007 15:33 ColdFire ist offline E-Mail an ColdFire senden Beiträge von ColdFire suchen
Cpt.Miller Cpt.Miller ist männlich
BlackBoarder


Dabei seit: 14.08.2003
Beiträge: 644
Herkunft: Stuttgart

      Zum Anfang der Seite springen

Also ich habe mich jetzt auf die Quelle von LX verlassen und hab es wie gesagt schon zwar in Python gelöst, nur eins versteh ich noch nicht ganz.

Ist die Prüfziffer bereits ein Teil der Sozialversicherungsnummer oder nicht? Weil mein Code kriegt bei LX' Quelle genau wie im Beispiel vorgerechnet die Prüfziffer 1 raus.
03.03.2007 22:21 Cpt.Miller ist offline E-Mail an Cpt.Miller senden Homepage von Cpt.Miller Beiträge von Cpt.Miller suchen
LX LX ist männlich
El Comandante en Jefe


images/avatars/avatar-2290.gif

Dabei seit: 25.11.2001
Beiträge: 5.372
Herkunft: Berliner Bronx

Achtung       Zum Anfang der Seite springen

Zitat:
Original von Cpt.Miller
Ist die Prüfziffer bereits ein Teil der Sozialversicherungsnummer oder nicht?
Die letzte Ziffer der Nummer ist die Prüfziffer, ja.

__________________
JS-Games.de - Misled Scripting Skills Gone Mad | Meine Filmkritiken | Urban Photography
Kommt mal in den IRC-Channel: irc.eu.freenode.net | Port 6667 | #blackboard

"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett

04.03.2007 02:45 LX ist offline E-Mail an LX senden Homepage von LX Beiträge von LX suchen
Cpt.Miller Cpt.Miller ist männlich
BlackBoarder


Dabei seit: 14.08.2003
Beiträge: 644
Herkunft: Stuttgart

      Zum Anfang der Seite springen

Sehr gut, dass geht aus dem Beispiel nämlich nicht hervor. Dann werd ich das bald in PHP hier posten.
04.03.2007 08:44 Cpt.Miller ist offline E-Mail an Cpt.Miller senden Homepage von Cpt.Miller Beiträge von Cpt.Miller suchen
ColdFire ColdFire ist männlich
BlackBoarder


Dabei seit: 08.06.2002
Beiträge: 986

Themenstarter Thema begonnen von ColdFire
      Zum Anfang der Seite springen

@ Cpt.

Währe echt suppi schonmal danke im voraus!

lg CF
05.03.2007 11:49 ColdFire ist offline E-Mail an ColdFire senden Beiträge von ColdFire suchen
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
BlackBoard » Design, Programmierung & Entwicklung » Programmieren » PHP SozialversicherungsNR

Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH