Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από nikirtsi » 12 Μαρ 2009 18:13

Έχει κανείς καμμία σε PHP που να παίζει σωστά ?
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από nikirtsi » 12 Μαρ 2009 18:41

Κώδικας: Επιλογή όλων

function check_afm($num)
{
    $sum=0;
    $ext=256;
    $digits=array();
    $msg1="Ο Α.Φ.Μ. ".$num." είναι έγκυρος.";
    $msg2="Ο Α.Φ.Μ. ".$num." δεν είναι έγκυρος.";
    if(!empty($num) && intval($num) && is_numeric($num)))
    {
      for&#40;$i=0;$i<&#40;strlen&#40;$num&#41;-1&#41;;$i++&#41;&#123;   array_push&#40;$digits,$num&#123;$i&#125;&#41;;    &#125;
       for&#40;$i=0;$i
       &#123;
          $sum+=$digits&#91;$i&#93;*$ext;
          $ext=$ext/2;
       &#125;
      if&#40;&#40;intval&#40;fmod&#40;$sum,11&#41;==10&#41;&#41;&&&#40;$digits&#91;strlen&#40;$num&#41;-1&#93;==0&#41;&#41; &#123;  return $msg1;    &#125;
      elseif&#40;&#40;intval&#40;fmod&#40;$sum,11&#41;<10&#41;&#41;&&&#40;$digits&#91;strlen&#40;$num&#41;-1&#93;==intval&#40;fmod&#40;$sum,11&#41;&#41;&#41;&#41;&#123;  return $msg1;   &#125;
       else  &#123;   return $msg2;   &#125;
    &#125;
    else
    &#123;
       return $msg2;
    &#125;
&#125;
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από nikirtsi » 12 Μαρ 2009 18:42

Ευχαριστώ πολύ nikirtsi
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
martkonsta
Honorary Member
Δημοσιεύσεις: 579
Εγγραφή: 23 Σεπ 2006 11:54
Τοποθεσία: Βέροια,Βόλος
Επικοινωνία:

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από martkonsta » 12 Μαρ 2009 18:47

Αυτό θα πει selfservice :D
Και δεν δυσκολεύει και κανέναν εδώ πέρα :P
Πέρα από την πλάκα μπράβο & ευχαριστούμε για το script.Μπορεί να μας φανεί χρήσιμο.Δικό σου είναι?
Εικόνα

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από nikirtsi » 12 Μαρ 2009 19:25

εεεεε ναι ναι δικό μου είναι γκουχ γκουχ....
http://www.techteam.gr/blogs/entry.php? ... e_id=20068 :wink:
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από korgr » 12 Μαρ 2009 20:13

και αν ποτε καποιος το χρειαστει σε Javascript (για ελεγχο client side πριν αποσταλει η φορμα):

Κώδικας: Επιλογή όλων

    function checkAFM &#40;afm&#41;
    &#123;      
       if&#40;!afm.match&#40;/^\d&#123;9&#125;$/&#41;&#41; return false;
       afm = afm.split&#40;''&#41;.reverse&#40;&#41;.join&#40;''&#41;;
       
       var Num1 = 0;
       for&#40;var iDigit= 1; iDigit <=  8; iDigit++&#41;
       &#123;
          Num1 += afm.charAt&#40;iDigit&#41; << iDigit;     
       &#125;

       return &#40;Num1 % 11&#41; % 10 == afm.charAt&#40;0&#41;;   
    &#125;

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6236
Εγγραφή: 30 Νοέμ 2004 03:09

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από fafos » 12 Μαρ 2009 21:51

Yparxei kai enas poio sigouros tropos gia to afm:

Κώδικας: Επιλογή όλων

<?
if&#40;$_POST&#91;afm&#93; !=''&#41; &#123;
$theLocation="http&#58;//www.gsis.gr/gsis/servlet/gsisNew/checkAFM?afm=$_POST&#91;afm&#93;";   

$startingpoint = '<body>'; 
$endingpoint = '</body>'; 



set_time_limit&#40;60&#41;; // give us more than 30 seconds on the server's default timeout to process this script, just in case

preg_match&#40;"/^&#40;https?&#58;\/\/&#41;?&#40;&#91;^\/&#93;*&#41;&#40;.*&#41;/i", "$theLocation", $matches&#41;;
$theDomain = "http&#58;//" . $matches&#91;2&#93;;
$page = $matches&#91;3&#93;;

$fd = fopen&#40;$theDomain.$page, "r"&#41;;  // "rb" may work better on NT servers
$value = "";
while&#40;!feof&#40;$fd&#41;&#41;&#123;
	$value .= fread&#40;$fd, 4096&#41;;	
&#125;
fclose&#40;$fd&#41;;
$start= strpos&#40;$value, "$startingpoint"&#41;;  
$finish= strpos&#40;$value, "$endingpoint"&#41;;  
$length= $finish-$start;
$value=substr&#40;$value, $start, $length&#41;;

$afmok = '<font color="#009900">Ο Α.Φ.Μ. '.$_POST&#91;afm&#93;.' είναι έγκυρος</font>';

$afmnotok = '<font color="#ff0000">Ο Α.Φ.Μ. '.$_POST&#91;afm&#93;.' δεν είναι έγκυρος</font>';

if &#40;preg_match&#40;"/δέν/", $value&#41;&#41; &#123;
    $message = $afmnotok;
&#125; else &#123;
    $message = $afmok;
&#125; 

&#125;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-7">
<meta http-equiv="Content-Style-Type" content="text/css">
<title></title>
</head>
<body>
<b><?echo $message; ?></b>
<FORM action='' method=post>
                                        <p>&nbsp;</p>
                    
                                        <P><span class="textblue2"><B>Α.Φ.Μ&#58;</B></span> 
                                          <INPUT maxLength=9 size=9 name=afm>

                                          <INPUT type=submit value=Ελεγχος>
                                        <P>
                                      </FORM>

</body>
</html>
me auton ton tropo pame mia volta mexri to taxis, kanoume elenxo an pragmati yparxei to afm kai mas gyrnaei ta analoga apotelesmata.. :lol:
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από korgr » 13 Μαρ 2009 00:25

:lol: Καλο!
Πολυ φοβαμαι ομως πως ο ελεγχος τους στηριζεται στο γνωστο αλγοριθμο και οχι στο αν πραγματι υπαρχει σε ισχυ το ΑΦΜ. Αν δηλαδη το ΑΦΜ πληροι τα κριτηρια να δωθει σε καποιον σε κανα μηνα, θα επιστρεψει true...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6236
Εγγραφή: 30 Νοέμ 2004 03:09

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από fafos » 13 Μαρ 2009 02:48

korgr έγραψε::lol: Καλο!
Πολυ φοβαμαι ομως πως ο ελεγχος τους στηριζεται στο γνωστο αλγοριθμο και οχι στο αν πραγματι υπαρχει σε ισχυ το ΑΦΜ. Αν δηλαδη το ΑΦΜ πληροι τα κριτηρια να δωθει σε καποιον σε κανα μηνα, θα επιστρεψει true...
giati? gia thn eforia feiaxnei to site? :lol:
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από nikirtsi » 28 Μαρ 2009 11:11

Όχί ρε παιδία... είναι για ένα καλάθι αγορών σε ένα e-shop
Κάπου ακούσαν πως υπάρχει έλεγχος αν το ΑΦΜ είναι έγκυρο
και με τρέχουν τώρα.
Εντάξεi υλοποιήθηκε.

Σας δίνω και τον αλγόριθμο που κάνει τον έλεγχο.

Κώδικας: Επιλογή όλων

if &#40;strlen  &#40;$var&#41;  != 9 &#41; return &#40;false&#41;;
Δοκιμασμένο και σίγουρο...
:wink:
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

sattipgeorge
Δημοσιεύσεις: 28
Εγγραφή: 21 Νοέμ 2009 16:31

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από sattipgeorge » 23 Αύγ 2010 18:20

Δυστιχώς η εφορία άλλαξε την εφαρμογή ελέγχου των ΑΦΜ και ούτε το πρώτο script δεν λειτουργεί έχει ανοιχτή την παρένθεση του for.
Ευχαριστώ

Άβαταρ μέλους
dimitrisdamo
Δημοσιεύσεις: 78
Εγγραφή: 19 Νοέμ 2009 20:00
Επικοινωνία:

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από dimitrisdamo » 24 Αύγ 2010 11:06

επισης στην συνάρτηση is_numeric μπορει να παρακαμφθεί έστω οτι το αφμ ειναι 123ασδ123
τοτε περνάει τον ελεγχο κατι που νομιζω ειναι λαθος

sattipgeorge
Δημοσιεύσεις: 28
Εγγραφή: 21 Νοέμ 2009 16:31

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από sattipgeorge » 28 Αύγ 2010 13:16

Έχει κάποιος κάποια συνάρτηση που να ελέγχει την εγκυρότητα του ΑΦΜ και να δουλεύει σωστά σε php?

Άβαταρ μέλους
giannis17
Honorary Member
Δημοσιεύσεις: 1215
Εγγραφή: 06 Ιαν 2005 19:50
Τοποθεσία: Παγκράτι - Αθήνα
Επικοινωνία:

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από giannis17 » 06 Μαρ 2013 21:42

Σορρυ που ξεθάβω αυτό το post αλλά έχει κανείς το καινούριο link για το script από το ΓΓΠΣ ?

Είναι πολύ χρήσιμο!
"There is only one problem with common sense; it’s not very common."
&#8211; Milt Bryce

Άβαταρ μέλους
nikosdimos
Δημοσιεύσεις: 70
Εγγραφή: 22 Σεπ 2007 17:07

Συνάρτηση ελέγχου εγκυρότητας ΑΦΜ

Δημοσίευση από nikosdimos » 06 Μαρ 2013 22:22

Πας εδώ --> «Εγκυρότητα Φορολογικών Στοιχείων» --> «Ελέγξτε την εγκυρότητα ενός Α.Φ.Μ.»

Απλά λέει ότι προς το παρών η υπηρεσία δεν είναι διαθέσιμη.

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες