Eigen kopie rabobank overzicht
LET OP, DIT SCRIPT BEVAT GEEN BEVEILIGING. PAS OP MET GEVOELIGE INFORMATIE Na op 1 dag meerdere keren te moeten inloggen op de rabobank site (internetbankieren) leek het me handiger als ik lokaal een kopie van de transactie informatie zou hebben. Daarom heb ik het volgende script, dat mijn lokale database vult met die informatie gemaakt. Een ander voordeel is dat ik bijvoorbeeld transacties in categoriën kan verdelen. Aangezien het hier getoonde script alleen de database vult, heb ik geen voorbeeld online staan. Werkwijze: Download via rabobank internet bankieren een rekeningoverzicht van de gewenste periode, in komma-gescheiden formaat. Plak vervolgens de tekst van het ontvangen bestand in de textarea die verschijnt bij het aanroepen van rekening.php
--- Code om MySQL tabel te maken ---
[code]CREATE TABLE `overzicht` (
`rekening` bigint(20) unsigned NOT NULL,
`valuta` varchar(3) NOT NULL,
`datum1` date NOT NULL,
`code` varchar(1) NOT NULL,
`bedrag` decimal(8,2) NOT NULL,
`tegenrek` varchar(12) NOT NULL,
`naam` tinytext NOT NULL,
`datum2` date NOT NULL,
`type` varchar(2) NOT NULL,
`overig` varchar(16) NOT NULL,
`omschr1` tinytext NOT NULL,
`omschr2` tinytext NOT NULL,
`omschr3` tinytext NOT NULL,
`omschr4` tinytext NOT NULL,
`omschr5` tinytext NOT NULL,
`omschr6` tinytext NOT NULL
)p[/code]
--- rekening.php ---
[code]<?php
error_reporting(E_ALL);
$toon_form = ( isset($_POST['invoer']) ? false : true );
$db_host = 'localhost';
$db_gebruiker = 'gebruiker';
$db_wachtwoord = 'wachtwoord';
$db_naam = 'naam';
/* Als je bij het aanmaken van de database voor een andere tabelnaam hebt gekozen, verander die hieronder dan mee (komt 1x voor). Verder hoeft hieronder niets veranderd te worden. */
if ($toon_form)
{
// Nog geen invoer, toon tekstvak
?>
<form method="post" action="rekening.php">
<b>Vul hier de teskt van de komma-gescheiden rabobank rekening overzicht in</b><br />
<textarea name="invoer" rows="30" cols="50"></textarea><br />
<input type="submit" value="voer in" />
</form>
<?php
}
else
{
$invoer = stripslashes($_POST['invoer']);
mysql_connect($db_host, $db_gebruiker, $db_wachtwoord);
mysql_select_db($db_naam);
$sql_invoer = '';
$invoer_array = array();
$invoer_array = explode("\n",$invoer);
foreach( $invoer_array AS $regel )
{
if (strlen($regel) > 2)
{
$sql_invoer .= '(' . $regel . '), ';
}
}
$sql_invoer = substr($sql_invoer,0,-2);
$sql = "INSERT INTO overzicht (rekening, valuta, datum1, code, bedrag, tegenrek, naam, datum2, type, overig, omschr1, omschr2, omschr3, omschr4, omschr5, omschr6) VALUES " . $sql_invoer . ";";
mysql_query($sql) or die('Helaas blijkt de bewerking niet helemaal goed te zijn verlopen.');
echo 'De gegevens zijn toegevoegd aan de database ' . $db_naam;
}
?>[/code]
Reacties
0