Xampp上的PHP脚本完全仅适用于localhost

时间:2018-05-29 09:21:41

标签: php xampp

我有一台运行Xampp的虚拟机。如果我运行一个脚本从数据库中读取一些数据并将其写回,如果我在localhost本身(localhost / script.php)上执行此操作,则可以正常工作。 如果我使用客户端(IP.of.client / script.php)运行脚本,脚本将启动,但在结束之前中止而不会显示任何错误消息(错误消息全部启用)。

脚本大约需要6秒钟。

在localhost和客户端上运行有什么区别?

的问候, 斯蒂芬

剧本:

error_reporting(E_ALL); 
ini_set ('error_reporting', E_ALL);
ini_set('display_errors', 1);   
date_default_timezone_set("Europe/Berlin");

include('classes/bitdb.php');
include('classes/mailer.php');
include('classes/tools.php');
include('classes/ftp.php');

$beginn = microtime(true);  

//CSV-Pfad
$CSVPfad = "CSVData/";
$filename = "kundenkarten.txt";

//Öffne Bit Datenbank
$conn = bitdb::OpenDB();

$CSVData  = "Kundenkarten\n";




//Hole Artikelliste von der Webseite
$res = bitdb::getKundenkarten($conn);
echo odbc_num_rows($res);
$anz_rows = 0;
while(odbc_fetch_row($res)){
    $anz_rows++;
    $LfdNr = bitdb::odbc_resultat($res, "LfdNr");
    $kartengruppe = bitdb::odbc_resultat($res, "Kartengruppe");
    if(bitdb::odbc_resultat($res, "Gesperrt") >= 1)
        $gesperrt = 1;
    else    
        $gesperrt = 0;

    $res2 = ""; 
    //Adresse-ID ermitteln
    if($kartengruppe == "3"){ //Kundenkarte
        $res2 = bitdb::getKundenAdresse($LfdNr , $conn);
    }
    elseif($kartengruppe == "4"){ //Firmenkundenkarte


        //Bei Firmenkundenkarten muss ein Umweg über die DB Personal gemacht werden
        $res2 = bitdb::getKundenAdresseFirmen($LfdNr , $conn);

        //Kartennummer muss aber auf altem Weg geholt werden
        $res3 = bitdb::getKundenAdresse($LfdNr , $conn);
        odbc_fetch_row($res3);
        $kartennummer = bitdb::odbc_resultat($res3, "SATZNR");
    }
    //else
        //echo "<br/>".bitdb::odbc_resultat($res, "LfdNr");

    //  odbc_result_all($res2,"border=1");
    if($res2){
        while(odbc_fetch_row($res2)){
            if(bitdb::odbc_resultat($res2, "ADRESSKZ") == 1){  //Kassenkunden Firmenkunden
                //Kunden
                $firmenkunde = 1;
                $kundennummer = bitdb::odbc_resultat($res2, "SATZNR"); //hier kundennummer, nicht kartennummer!

                $CSVData  .= $kartennummer.";".bitdb::odbc_resultat($res, "KartenID").";".bitdb::odbc_resultat($res2, "NAME1").";".bitdb::odbc_resultat($res2, "NAME2").";".bitdb::odbc_resultat($res2, "STRASSE").";".bitdb::odbc_resultat($res2, "PLZ").";".bitdb::odbc_resultat($res2, "ORT").";".$kartengruppe.";".$gesperrt.";".bitdb::odbc_resultat($res, "Eingezogen").";".$firmenkunde."\n";
                echo "<br/>".$kartennummer.";".bitdb::odbc_resultat($res, "KartenID").";".bitdb::odbc_resultat($res2, "NAME1").";".bitdb::odbc_resultat($res2, "NAME2").";".bitdb::odbc_resultat($res2, "STRASSE").";".bitdb::odbc_resultat($res2, "PLZ").";".bitdb::odbc_resultat($res2, "ORT").";".$kartengruppe.";".$gesperrt.";".bitdb::odbc_resultat($res, "Eingezogen").";".$firmenkunde;
            }
            elseif(bitdb::odbc_resultat($res2, "ADRESSKZ") == 8){  //Kassenkunden
                //Kunden
                $firmenkunde = 0;
                $kartennummer = bitdb::odbc_resultat($res2, "SATZNR");
                $CSVData  .= $kartennummer.";".bitdb::odbc_resultat($res, "KartenID").";".bitdb::odbc_resultat($res2, "NAME1").";".bitdb::odbc_resultat($res2, "NAME2").";".bitdb::odbc_resultat($res2, "STRASSE").";".bitdb::odbc_resultat($res2, "PLZ").";".bitdb::odbc_resultat($res2, "ORT").";".$kartengruppe.";".$gesperrt.";".bitdb::odbc_resultat($res, "Eingezogen").";".$firmenkunde."\n";
                echo "<br/>".$kartennummer.";".bitdb::odbc_resultat($res, "KartenID").";".bitdb::odbc_resultat($res2, "NAME1").";".bitdb::odbc_resultat($res2, "NAME2").";".bitdb::odbc_resultat($res2, "STRASSE").";".bitdb::odbc_resultat($res2, "PLZ").";".bitdb::odbc_resultat($res2, "ORT").";".$kartengruppe.";".$gesperrt.";".bitdb::odbc_resultat($res, "Eingezogen").";".$firmenkunde;
            }               
            elseif(bitdb::odbc_resultat($res2, "ADRESSKZ") == 4){ //Mitarbeiter
                //Personal
                //echo " PERSONAL:   ".bitdb::odbc_resultat($res2, "NAME1")." ".bitdb::odbc_resultat($res2, "NAME2")." PERS#: ".bitdb::odbc_resultat($res2, "SATZNR");;
                echo " MITARBEITER ADRESSKZ => ABBRUCH";
            }
            else{
                echo " UNBEKANNTE ADRESSKZ: ".bitdb::odbc_resultat($res2, "ADRESSKZ")." => ABBRUCH";
            }                       
        }
    }
    else{
        if($kartengruppe == 1){ //Mitarbeiterkarten
            //Alles ok!
        }
        else{
            //echo "<br/> Fehler01: Kartengruppe = ".$kartengruppe." LfdNr = ".$LfdNr;
        }
    }

}
echo "<br/> Anzahl Datensätze: ".$anz_rows;

之后,数组将以txt文件写入,通过FTP上传到另一台服务器,但脚本没有完成while()。

0 个答案:

没有答案