Import dat z banky: Porovnání verzí
Z Freenetis Wiki
(Založena nová stránka: =Import výpisů z eBanky= ==Spojování více (netransparentních) výpisů do jednoho== V systému eBanky si můžete nechat vyhotovit výpisy pro zadané období. Při ...) |
(→Spojování více (netransparentních) výpisů do jednoho) |
||
| Řádek 8: | Řádek 8: | ||
Pokud po instalaci Freenetisu potřebujete naimportovat mnoho (např. několik desítek) netransparentních výpisů najednou, pak můžete klikat po jednom, nebo můžete využít skript pro command-line php, který všechny výpisy spojí do jediného velkého souboru: | Pokud po instalaci Freenetisu potřebujete naimportovat mnoho (např. několik desítek) netransparentních výpisů najednou, pak můžete klikat po jednom, nebo můžete využít skript pro command-line php, který všechny výpisy spojí do jediného velkého souboru: | ||
| − | + | <?php | |
| − | + | $stderr=fopen("php://stderr", "r"); | |
| − | + | $first=true; | |
| − | + | $file_cnt=0; | |
| − | + | foreach ($_SERVER["argv"] as $argc=>$argv) | |
| − | + | if ($argc>0 && file_exists($argv) && is_file($argv)) { | |
| − | + | $file_cnt++; | |
| − | + | fprintf($stderr, "Zpracovávám: $argv\n"); | |
| − | + | $str=file_get_contents($argv, "r"); | |
| − | + | $start=stripos($str, "Pohyby na"); | |
| − | + | $table_start=stripos($str, "<table", $start); | |
| − | + | $first_row_start=stripos($str, "<tr",$table_start+6); | |
| − | + | $second_row_start=stripos($str, "<tr",$first_row_start+3); | |
| − | + | if ($first) // je to první soubor? | |
| − | + | echo substr($str, 0, $second_row_start); // vytiskni i jeho hlavičku | |
| − | + | $first=false; | |
| − | + | } | |
| − | + | $last_row_end=stripos($str, "</table", $second_row_start); | |
| − | + | echo substr($str, $second_row_start, $last_row_end-$second_row_start-8); | |
| − | + | } | |
| − | + | echo substr($str, $last_row_end); // u posledního souboru vytiskni i konec | |
| − | + | fprintf($stderr, "\nZpracováno $file_cnt souborů\n"); | |
| − | + | ?> | |
| − | |||
| − | |||
Skript uložte do souboru např. "radky.php" a následně spusťte příkazem: | Skript uložte do souboru např. "radky.php" a následně spusťte příkazem: | ||
php radky.php *.htm > vysledek.html | php radky.php *.htm > vysledek.html | ||
Verze z 18. 8. 2009, 07:39
Import výpisů z eBanky
Spojování více (netransparentních) výpisů do jednoho
V systému eBanky si můžete nechat vyhotovit výpisy pro zadané období. Při volbě délky období uvažujete takto:
- Čím kratší období bude, tím častěji budete muset výpisý do Freenetis-u importovat
- Čím delší období bude, tím déle budou muset uživatelé čekat na připsání kreditu do Freenetis-u
Pokud po instalaci Freenetisu potřebujete naimportovat mnoho (např. několik desítek) netransparentních výpisů najednou, pak můžete klikat po jednom, nebo můžete využít skript pro command-line php, který všechny výpisy spojí do jediného velkého souboru:
<?php
$stderr=fopen("php://stderr", "r");
$first=true;
$file_cnt=0;
foreach ($_SERVER["argv"] as $argc=>$argv)
if ($argc>0 && file_exists($argv) && is_file($argv)) {
$file_cnt++;
fprintf($stderr, "Zpracovávám: $argv\n");
$str=file_get_contents($argv, "r");
$start=stripos($str, "Pohyby na");
$table_start=stripos($str, "<table", $start);
$first_row_start=stripos($str, "<tr",$table_start+6);
$second_row_start=stripos($str, "<tr",$first_row_start+3);
if ($first) // je to první soubor?
echo substr($str, 0, $second_row_start); // vytiskni i jeho hlavičku
$first=false;
}
$last_row_end=stripos($str, "</table", $second_row_start);
echo substr($str, $second_row_start, $last_row_end-$second_row_start-8);
}
echo substr($str, $last_row_end); // u posledního souboru vytiskni i konec
fprintf($stderr, "\nZpracováno $file_cnt souborů\n");
?>
Skript uložte do souboru např. "radky.php" a následně spusťte příkazem:
php radky.php *.htm > vysledek.html