15 Paź
2012
15 Paź
'12
23:27
On Mon, 15 Oct 2012 17:24:06 +0200, Daniel Kulesza d.kulesza@ig-zp.pl wrote:
W dniu 2012-10-15 16:04, Przemysław Backiel pisze:
W dniu 2012-10-15 15:25, Daniel Kulesza pisze:
Nie działa, spowodowane jest to zmianą portalu. Ja zleciłem poprawienie skryptu, może ktoś się dorzuci ?
Ten skrypt płatności masowych działa ok, importuje płatności do lms
Skrypt uruchamia się z poziomu LMS robiąc instancję "system" korzystającą z crona
a w polu "command" wpisuje się
php /var/www/html/lms/contrib/bin/cashimport-bzwbk.php logindobanku hasłodobanku
działa z plikami w formacie
id|data|kwota|nadawca|id transakcji|numer konta|tytuł płatnosci
pozdrawiam
--
Dariusz Kowalczyk
---cashimport-bzwbk.php---
<?
$ch=curl_init();
$params="username=$argv[1]&password=$argv[2]";
$user_agent="Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";
$db_user='lms';
$db_host='127.0.0.1';
$db_pass='password';
$db_name='lms';
mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($db_name);
function get_save_file($file_url,$filename){
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $file_url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_COOKIEFILE,"/var/www/html/lms/contrib/bin/cookie/ciastko");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
$data_rows=curl_exec($ch);
$f=fopen("/var/www/html/lms/contrib/bin/bzwbkfiles/".$filename,"w");
fputs($f,$data_rows);
fclose($f);
curl_close($ch);
return $data_rows;
}
function inc_to_lms($data_rows) {
$lines=explode("\n",$data_rows);
$KKSGW=explode("|",$lines[0]);
for ($i=1;$i<count($lines)-2;$i++) {
$line=explode("|",$lines[$i]);
//wpis do lmsa
$data=mktime(0,0,0,substr($line[1],2,2),substr($line[1],0,2),substr($line[1],-4));
$kto=$line[3];
$kwota=$line[2];
$opis=substr($line[6],0,-2);
$id=substr($line[5],-12);
$id=1*$id;
$hash=md5($line[0].$KKSGW);
$kto=addslashes(iconv("ISO-8859-2","UTF-8",$kto));
$opis=addslashes(iconv("ISO-8859-2","UTF-8",$opis));
$rs=mysql_query("Select id from cashimport where
Hash='".$hash."'");
if (mysql_num_rows($rs)==0) {
mysql_query("Insert into cashimport
(Date,Value,Customer,Description,CustomerId,Hash) values
('$data','$kwota','$kto','$opis','$id','$hash')");
// echo ("Insert into cashimport
(Date,Value,Customer,Description,CustomerId,Hash) values
('$data','$kwota','$kto','$opis','$id','$hash')")."\n";
} else echo "Pomijam wpis, bo juz taki istnieje.\n";
//koniec wpisu do lmsa;
}
}
curl_setopt($ch, CURLOPT_URL,
"https://www.centrum24.pl/rapkm/loginAction.do");
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$params);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_COOKIEJAR,"/var/www/html/lms/contrib/bin/cookie/ciastko");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
$res=curl_exec($ch);
//echo $res;
curl_close($ch);
$url="https://www.centrum24.pl/rapkm/dostepne_pliki.do";
$params="action=lista";
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $url."?".$params);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_COOKIEFILE,"/var/www/html/lms/contrib/bin/cookie/ciastko");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
$files=curl_exec($ch);
//echo $files;
curl_close($ch);
$last=file("/var/www/html/lms/contrib/bin/bzwbkfiles/!lastfile.txt");
$ofs=0;
$start=strpos($files,"dostepne_pliki.do?",$ofs);
$end=strpos($files,".txt\"",$ofs);
$first=true;
while ($start!==false) {
$file_url=substr($files,$start,$end-$start+4);
$filename=substr($file_url,strpos($file_url,"nazwa_pliku=")+12);
if ($last[0]==$filename) break;
if ($first) {
$first=false;
$f=fopen("/var/www/html/lms/contrib/bin/bzwbkfiles/!lastfile.txt","w");
fputs($f,$filename);
fclose($f);
}
//echo $filename." - URL $file_url \n";
//pobieranie pliku
inc_to_lms(get_save_file("https://www.centrum24.pl/rapkm/".$file_url,$filename));
//koniec pobierania pliku
$ofs=$end+5;
$start=strpos($files,"dostepne_pliki.do?",$ofs);
$end=strpos($files,".txt\"",$ofs);
}
?>
------------------------------