PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dringend


dev
30.10.2002, 17:24:14
Ich brauche dringend hilfe. Ich will eine Textdatei von einem anderen Server laden.

Das Script:
include ("config.inc.php");

if (strstr($HTTP_USER_AGENT,"MSIE"))
{
$attachment="";
}
else
{
$attachment=" attachment;";
}
Header("Content-Type: application/downloadn");
$header=sprintf("Content-Disposition:%s filename="%s"n",$attachment,$localname);
Header($header);
Header("Content-Transfer-Encoding: binaryn");
$handle=@fopen($netname,"rb");
@fpassthru($handle);


in der config. sind die Variablen localname und netname festgelegt. Die Textfile wird auch ausgelsen, aber nicht wie vorgesehen auf Platte gespeichert. Ausßerdem habe ich immer Fehlermeldungen betreffs des headers.

Warning: Cannot add header information - headers already sent by (output started at c:programmeapache groupapachehtdocszero-umgebungllwebhttp_fileconfig.inc.php:87) in c:programmeapache groupapachehtdocszero-umgebungllwebhttp_filedownloadinterface.php on line 17

wer kann mir helfen? ich weiss nicht wo der Fehler ist.

CU
Dev

Progman
30.10.2002, 18:49:04
http://www.php.net/header
http://tut.php-q.net/manlesen.html

Du hast noch ein echo/print vor deinen Header Aufrufen.

Ben20
30.10.2002, 18:49:43
Cannot send header ...

taucht immer dann auf, wenn Du ein Cookie setzt oder einen Header sendest, nachdem Du schon irgendwas (z.B. <html> oder auch nur eine Leerzeile) an den Browser geschickt hast.

dev
30.10.2002, 18:59:34
liegt es dann an der include anweisung?
weil die Leerzeile habe ich schon gelöscht

|Coding
30.10.2002, 19:05:53
schau dir das mal an:


output started at c:programmeapache groupapachehtdocszero-umgebungllwebhttp_fileconfig.inc.php:87



darauß lässt sich doch logischerweise schließen, dass du dir die cfg-datei mal näher ansehen solltest, besonders line 87. so würde ich jetzt erst mal vorgehen...

dev
30.10.2002, 19:57:38
ja das witztig ist die Zeile gibt es nicht in der config.
Habe ich auch schon dran gedacht.

Ben20
31.10.2002, 16:29:57
Aber in der config.inc.php wird irgendwas ausgegeben.

dev
01.11.2002, 08:53:48
irgenwie funzt dieses Script nicht. Hat jemand von Euch eine Idee wie man einen automatischen Download von entfernten Dateien realsieren kann? Oder vielleicht hat jemand einen Tipp wo man ein Script dazu bekommt.

Cu
Dev

Ben20
01.11.2002, 11:48:21
Du mußt nur den entsprechenden Output finden, dann sollte das Script gehen.

dev
01.11.2002, 11:56:32
hast du denn eine tipp wie der entsprechende Output aussehen könnte. Wäre Dir echt dankbar für einen Hinweis.

CU Dev

Ben20
01.11.2002, 14:11:01
Stell die config.inc.php4 mal als txt Datei auf den Server, dann kann man nachsehen woran es liegt.

dev
02.11.2002, 13:32:39
hier ist die config
Private Daten habe ich rausgenommen, deshalb xy und so.
Bei $localname und $netname sind die Angaben für den Download hinterlegt. localname=Speicherort (Platte) Netname=URL - dort liegt das Textfile

<?

## Config

$import_text = "Bitte w&auml;hlen Sie die zu importierende Datei aus";

$laufzeit = "1";

$kkdatum = "0";

$stopdatum = "0";

$offset = "Null";



$resnr1 = "100283";

$resname1 = "xyz";

$resdebitor1 = "10000";

$bezahlungsart1 = "1";



$resnr2 = "10211";

$resname2 = "xy";

$resdebitor2 = "20024";

$bezahlungsart2 = "1";


$resnr3 = "10212";

$resname3 = "zxy";

$resdebitor3 = "20026";

$bezahlungsart3 = "1/12";


$resnr4 = "10213";

$resname4 = "abc";

$resdebitor4 = "20028";

$bezahlungsart4 = "1";


$header="From:$email_from_name<$email_from_mail>n";

$email_to = "";

$email_from_name = "Service";

$email_from_mail = "";

$email_betreff = "Datenbankeintrag";

$mail_text = "nachfolgenden Daten wurden bereits eingetragen nr";



$tld1 = ".com";
$tld1 .= "1";

$tld2 = ".de";
$tld2 .= "0";

$tld3 = ".info";
$tld3 .= "0";

$tld4 = ".net";
$tld4 .= "0";

$tld5 = ".org";
$tld5 .= "0";

$tld6 = ".name";
$tld6 .= "0";


$netname = "url";
$localname = "dimport/200209.txt";

$down_day = "01";
$down_time = "00:15";
?>

CU
Dev

Ben20
02.11.2002, 15:35:03
Der Fehler liegt am ##Config Der Kommentar produziert eine Leerzeile die dann an den Browser geschickt wird!