From 890d7115acef85617e62f4924704f03ac32a0074 Mon Sep 17 00:00:00 2001 From: cookie Date: Fri, 28 Dec 2007 13:01:32 +0000 Subject: [PATCH] bugfix git-svn-id: svn://svn.cccv.de/engel-system@257 29ba0400-6e00-0410-a75a-ca02368028f8 --- www-ssl/admin/dbUpdateFromXLS.php | 189 +++++++++++++++--------------- 1 file changed, 96 insertions(+), 93 deletions(-) diff --git a/www-ssl/admin/dbUpdateFromXLS.php b/www-ssl/admin/dbUpdateFromXLS.php index 14064eb7..3fb2b5a2 100755 --- a/www-ssl/admin/dbUpdateFromXLS.php +++ b/www-ssl/admin/dbUpdateFromXLS.php @@ -47,115 +47,118 @@ if( isset($_POST["PentabarfUser"]) && isset($_POST["password"]) && isset($_POST[ echo "Update XCAL-File from Pentabarf.."; if($PentabarfGetWith=="fsockopen") { - //backup error messeges and delate - $Backuperror_messages = $error_messages; - $fp = fsockopen( "ssl://$PentabarfXMLhost", 443, $errno, $errstr, 30); + + //backup error messeges and delate + $Backuperror_messages = $error_messages; + $fp = fsockopen( "ssl://$PentabarfXMLhost", 443, $errno, $errstr, 30); // $error_messages = $Backuperror_messages; - - if( !$fp) + + if( !$fp) + { + echo "

fail: File 'https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. "' not readable!". + "[$errstr ($errno)]

"; + } + else + { + if( ($fileOut = fopen( "$Tempdir/engelXML", "w")) != FALSE) { - echo "

fail: File 'https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. "' not readable!". - "[$errstr ($errno)]

"; + $head = 'GET /'. $PentabarfXMLpath. $_POST["PentabarfURL"]. ' HTTP/1.1'."\r\n". + 'Host: '. $PentabarfXMLhost. "\r\n". + 'User-Agent: Engelsystem'. "\r\n". + 'Authorization: Basic '. + base64_encode($_POST["PentabarfUser"]. ':'. $_POST["password"])."\r\n". + "\r\n"; + fputs( $fp, $head); + $Zeilen = -1; + while (!feof($fp)) + { + $Temp= fgets($fp,1024); + + // ende des headers + if( $Temp== "f20\r\n" ) + { + $Zeilen = 0; + $Temp=""; + } + + //file ende? + if( $Temp=="0\r\n") + break; + + if( ($Zeilen>-1) && ($Temp!="ffb\r\n") ) + { + //steuerzeichen ausfiltern + if( strpos( "#$Temp", "\r\n") > 0) + $Temp = substr($Temp, 0, strlen($Temp)-2); + if( strpos( "#$Temp", "1005") > 0) + $Temp = ""; + if( strpos( "#$Temp", "783") > 0) + $Temp = ""; + //schreiben in file + fputs( $fileOut, $Temp); + $Zeilen++; + } + } + fclose( $fileOut); + + echo "
Es wurden $Zeilen Zeilen eingelesen
"; } else + echo "

fail: File '$Tempdir/engelXML' not writeable!

"; + fclose($fp); + } + } + elseif($PentabarfGetWith=="fopen") + { + //user uns password in url einbauen + $FileNameIn = "https://". $_POST["PentabarfUser"]. ':'. $_POST["password"]. "@". + $PentabarfXMLhost. "/". $PentabarfXMLpath. $_POST["PentabarfURL"]; + + + if( ($fileIn = fopen( $FileNameIn, "r")) != FALSE) { if( ($fileOut = fopen( "$Tempdir/engelXML", "w")) != FALSE) { - $head = 'GET /'. $PentabarfXMLpath. $_POST["PentabarfURL"]. ' HTTP/1.1'."\r\n". - 'Host: '. $PentabarfXMLhost. "\r\n". - 'User-Agent: Engelsystem'. "\r\n". - 'Authorization: Basic '. - base64_encode($_POST["PentabarfUser"]. ':'. $_POST["password"])."\r\n". - "\r\n"; - fputs( $fp, $head); - $Zeilen = -1; - while (!feof($fp)) + $Zeilen = 0; + while (!feof($fileIn)) { - $Temp= fgets($fp,1024); - - // ende des headers - if( $Temp== "f20\r\n" ) - { - $Zeilen = 0; - $Temp=""; - } - - //file ende? - if( $Temp=="0\r\n") - break; - - if( ($Zeilen>-1) && ($Temp!="ffb\r\n") ) - { - //steuerzeichen ausfiltern - if( strpos( "#$Temp", "\r\n") > 0) - $Temp = substr($Temp, 0, strlen($Temp)-2); - if( strpos( "#$Temp", "1005") > 0) - $Temp = ""; - if( strpos( "#$Temp", "783") > 0) - $Temp = ""; - //schreiben in file - fputs( $fileOut, $Temp); - $Zeilen++; - } + $Zeilen++; + fputs( $fileOut, fgets( $fileIn)); } fclose( $fileOut); - echo "
Es wurden $Zeilen Zeilen eingelesen
"; } else echo "

fail: File '$Tempdir/engelXML' not writeable!

"; - fclose($fp); - } - } - elseif($PentabarfGetWith=="fopen") - { - //user uns password in url einbauen - $FileNameIn = "https://". $_POST["PentabarfUser"]. ':'. $_POST["password"]. "@". - $PentabarfXMLhost. "/". $PentabarfXMLpath. $_POST["PentabarfURL"]; - if( ($fileIn = fopen( $FileNameIn, "r")) != FALSE) - { - if( ($fileOut = fopen( "$Tempdir/engelXML", "w")) != FALSE) - { - $Zeilen = 0; - while (!feof($fileIn)) - { - $Zeilen++; - fputs( $fileOut, fgets( $fileIn)); - } - fclose( $fileOut); - echo "
Es wurden $Zeilen Zeilen eingelesen
"; - } - else - echo "

fail: File '$Tempdir/engelXML' not writeable!

"; - fclose( $fileIn); - } - else - echo "

fail: File 'https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. "' not readable!

"; - } - elseif( $PentabarfGetWith=="wget") - { - $Command = "wget --http-user=". $_POST["PentabarfUser"]. " --http-passwd=".$_POST["password"]. " ". - "https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. - " --output-file=$Tempdir/engelXMLwgetLog --output-document=$Tempdir/engelXML". - " --no-check-certificate"; - echo system( $Command, $Status); - if( $Status==0) - echo "OK.
"; - else - echo "fail ($Status)($Command).
"; - } - elseif( $PentabarfGetWith=="lynx") - { - $Command = "lynx -auth=". $_POST["PentabarfUser"]. ":".$_POST["password"]. " -dump ". - "https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. " > $Tempdir/engelXML"; - echo system( $Command, $Status); - if( $Status==0) - echo "OK.
"; - else - echo "fail ($Status)($Command).
"; + fclose( $fileIn); } else - echo "

The PentabarfGetWith='$PentabarfGetWith' not supported

"; + echo "

fail: File 'https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. "' not readable!

"; + } + elseif( $PentabarfGetWith=="wget") + { + $Command = "wget --http-user=". $_POST["PentabarfUser"]. " --http-passwd=".$_POST["password"]. " ". + "https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. + " --output-file=$Tempdir/engelXMLwgetLog --output-document=$Tempdir/engelXML". + " --no-check-certificate"; + echo system( $Command, $Status); + if( $Status==0) + echo "OK.
"; + else + echo "fail ($Status)($Command).
"; + } + elseif( $PentabarfGetWith=="lynx") + { + $Command = "lynx -auth=". $_POST["PentabarfUser"]. ":".$_POST["password"]. " -dump ". + "https://$PentabarfXMLhost/$PentabarfXMLpath". $_POST["PentabarfURL"]. " > $Tempdir/engelXML"; + echo system( $Command, $Status); + if( $Status==0) + echo "OK.
"; + else + echo "fail ($Status)($Command).
"; + } + else + echo "

The PentabarfGetWith='$PentabarfGetWith' not supported

"; } else {