Wie werd waar wanneer geboren en waarom werd hij door wie hoe genoemd?
braque© zijn is een keuze
ff zoeken met google...
[edit]
Moet je wel ff zelf omschrijven naar PHP
en dan al die getallen optellen, en delen door 11
komt daar 'n heel getal uit, dan is 't een geldig rekeningnummer (iig bij de postbank)
edit: ik lees net ergens dat je 't eerste getal met vermenigvuldigen met 9, 't tweede met 8, enz
bij mijn rekeningnummer kloppen beide methoden
"Happiness is a way of travel, not a destination."
--Roy Goodman
je bedoelt zeker:Verwijderd schreef op 31 juli 2002 @ 11:54:
$array = explode("-", $_GET[rekeningnr]);
$rek1 = $array[0];
$rek2 = $array[1];
$rek3 = $array[2];
1
| list( $rek1, $rek2, $rek3 ) = explode( '-', $_GET[ 'rekeningnr' ] ); |
Maar nee dat is niet een juiste de methode voor het antwoord op je originele vraag
Bij mij klopt alleen de tweede, dus die zal het wel zijn.Flat© schreef op 31 juli 2002 @ 11:43:
edit: ik lees net ergens dat je 't eerste getal met vermenigvuldigen met 9, 't tweede met 8, enz
bij mijn rekeningnummer kloppen beide methoden
I don't kill flies, but I like to mess with their minds. I hold them above globes. They freak out and yell "Whooa, I'm *way* too high." -- Bruce Baum
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
| <?PHP error_reporting(E_ALL); if (isset($_GET['nummer']) && $_GET['nummer'] != ""){ echo "<B>".$nummer."</B><BR>"; $totaal = 0; $len = strlen($_GET['nummer']); $val = $len; if ($len == 9 || $len == 10){ for ($a = 0; $a < $len; $a++){ $num = substr($_GET['nummer'],$a,1); if ($num != "."){ $totaal = $totaal + ($num * $val); $val--; } if ($a == ($len - 2)){ $check = (($totaal/11)-(round($totaal/11)))*11; echo "Checkvalue = <B>".$check."</B><BR>"; if (substr($_GET['nummer'],8,1) == (string)$check && $len == 9){ $type = "Sofinummer"; } } if ($a == ($len-1) && ((round($totaal/11)-($totaal/11))*11) == 0){ $type = "Bankrekeningnummer"; } } if (!isset($type)) $type = "invalid"; } echo "Dit is een ".$type; } else { echo "Roep aan met <I>nummer.php?nummer=rekeningnummer</I> of\n<BR> <I>nummer.php?nummer=sofinummer</I> om te checken."; } ?> |
ohw, postbank rekeningnummers zijn trouwens niet te controleren want dat zijn gewoon elkaar opvolgende nummers.
<script type="text/javascript">
function toUnicode(elmnt,content)
{
if (content.length==elmnt.maxLength)
{
next=elmnt.tabIndex
if (next<document.forms[0].elements.length)
{
document.forms[0].elements[next].focus()
}
}
}
</script>
</head>
<body>
<form method="post" name="bankreknr">
<input size="2" tabindex="1" name="1" maxlength="2" onkeyup="toUnicode(this,this.value)">
<input size="2" tabindex="2" name="2" maxlength="2" onkeyup="toUnicode(this,this.value)">
<input size="2" tabindex="3" name="3" maxlength="2" onkeyup="toUnicode(this,this.value)">
<input size="3" tabindex="4" name="4" maxlength="3" onkeyup="toUnicode(this,this.value)">
<input type="submit" name="Submit" value="Check">
</form>
<?
$bankrekeningnummer="$_POST[1]$_POST[2]$_POST[3]$_POST[4]";
$elfproef = 0;
for ($k=0; $k<=8; $k++){
$elfproef += $$bankrekeningnummer{$k} * (9-$k);
}
if (isset($bankrekeningnummer) && $bankrekeningnummer!=""){
echo $bankrekeningnummer.' is '.($elfproef%11 == 0 ? 'onjuist' : 'juist');
}
?>
Verwijderd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| <? function elfProef($input) { $return = ''; if ((!preg_match("!^[0-9]{9}$!ie", $input)) || (strlen($input) <> 9)) { return false; } else { for ($i=1;$i<=10;$i++) { $nrParts = (substr((int)$input, ($i -1), 1) * (10 - $i)); $return = ($return + ($nrParts)); } return (($return % 11) == 0) ? true : false ; } } ?> |
Excuses
Had niet gezien dat M4rt1nvW al brokken had opgediend.
"Happiness is a way of travel, not a destination."
--Roy Goodman
Kom op zeg ...
1/ $return initen op een string
2/ [0-9] = \d
3/ de 'e' modifier ???
4/ <> moet gewoon != zijn
5/ else is totaal on nodig ..
6/ waarom van 1-10 en dan zo lastig doen met nog een 1 van de $i aftrekken ?
7/ substr gebruik waar niet nodig
8/ int cast die totaal onnodig is
9/ op regel 8 staan 4 overbodige haakjes (net als op regel 4 btw, waar ook nog es 2 accolades teveel staan
10/ regel 11 alweer 4 haakjes teveel (of 2 als je perse 'te net' wilt coden)
Casten naar int, dan automatisch laten casten naar string en dan weer laten casten naar int....Verwijderd schreef op 31 juli 2002 @ 13:49:
PHP:
7 $nrParts = (substr((int)$input, ($i -1), 1) * (10 - $i));
Excuses
Had niet gezien dat M4rt1nvW al brokken had opgediend.
Ermm... volgens mij is dat niet jouw bedoeling. (BTW PHP vindt het niet fout)
En waarom die dure preg_match? Zonde van je dure processor tijd...
Gebruik gewoon is_numeric.
ermm... zie ook punten grum...
Programmer - an organism that turns coffee into software.
Verwijderd
Anders lees je het eerst even waar de reactie op is ....
Mijn stukje, waar je nu op reageert is even snel in elkaar gezet om een ander op weg te helpen. Verbeteren / netjes maken mag een ieder zelf doen.
Dat "Goed script" slaat op het stukje code van M4rt1nvW, wat mij ook wel duidelijk lijkt aan de hand van de regels daaronder ... (Wat doet regel 17? ... mijn stukje gaat tot regel 14)
Als je onnodig dingen af moet zeiken, doe dat dan svp even naar mij privé.
M4rt1nvW schreef op 31 juli 2002 @ 13:24:
ohw, postbank rekeningnummers zijn trouwens niet te controleren want dat zijn gewoon elkaar opvolgende nummers.
"Happiness is a way of travel, not a destination."
--Roy Goodman
http://www.google.com
http://www.phpfreakz.nl/library.php?sid=1578
je mag echt zelf ook wel wat doen
Doet iets met Cloud (MS/IBM)
Dit topic is gesloten.
![]()