php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.08.2011, 10:30  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

dies (letzter Punkt) dürfte sich auf die wenig aussagekräftige Windows-Fehlermeldung beziehen

Zitat:
Zitat von Windows
Die Version dieser Datei ist nicht mit der ausgeführten Windows-Version kompatibel. Öffnen Sie die Systeminformationen des Computers, um zu überprüfen, ob eine x86-(32 Bit)- oder eine x64-(64 Bit)-Version des Programms erforderlich ist, und wenden Sie sich anschließend an den Herausgeber der Software.
das funktioniert aber auch nur, wenn die Datei einen Exe-Head hat (MZ -> 4D 5A) - ohne Exe-Head gibts wie er schon schrieb nicht mal die erweiterten Datei-Informationen ...Grund dürfte sein, wie von Chris angegeben ... Output Buffering und ne BOM am Anfang des Scripts (2 Scripte -> 2x BOM = 2 "Punkte")
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.08.2011, 11:42  
Neuer Benutzer
 
Registriert seit: 26.07.2011
Beiträge: 6
PHP-Kenntnisse:
Fortgeschritten
bn.One befindet sich auf einem aufstrebenden Ast
Standard

Also ich würde stets mit ob_start() und bevor du den DL ausgibst mit ob_end_clean() arbeiten. Ansonsten wirst du immer wieder irgendwelche Warnungen oder Fehler mit in die Dateien reindrücken. Bei Bildern fällt es nicht unbedingt auf, aber bei EXE'n ist es nat. fatal.
bn.One ist offline   Mit Zitat antworten
Alt 03.08.2011, 18:47  
Neuer Benutzer
 
Registriert seit: 19.07.2011
Beiträge: 14
PHP-Kenntnisse:
Fortgeschritten
JackCimberly befindet sich auf einem aufstrebenden Ast
Standard

Leider keine Zeit in den letzten beiden Tagen gehabt.

@eagle275
Hex-Code: Beginnend bei mir mit "0D 0A 4D 5A".
Andere HTML-Ausgaben sind nicht vorhanden.

Update Script:
PHP-Code:
// database connection
include("_mysql.php");


if (isset(
$_GET['fileID'])) {

ob_start();
$count 0;
$fileID $_GET['fileID'];

$set_ergebnis mysql_query("SELECT * FROM files WHERE fileID = '".$fileID."'"); # OR die("Error: $set_ergebnis <br />".mysql_error());;
$set_row mysql_fetch_object($set_ergebnis);

            
$count $set_row->downloads;
            
$file_data $set_row->file;

            
$count = ($set_row->downloads 1);
            
$sql "UPDATE files SET downloads = '$count' WHERE fileID = '".$fileID."'";
            
$result mysql_query($sql);


$file "/files/".$file_data;
ob_end_clean();
header('Content-type: application/octet-stream');
header("Content-Transfer-Encoding: binary");
header("Content-Type: application/download");
header("Content-Description: File Transfer");
header('Content-Length: ' filesize($file));
$dateiname basename($file);
header("Content-Disposition: attachment; filename=\"".$dateiname."\";");
readfile($file);
exit();


} else {
    echo 
"nicht vorhanden";

Die _mysql.php Datei zwar schon, aber nur wenn ein Fehler vorliegt mit der Datenbank. Kann ich also ausschließen, da der DL-Counter seine Arbeit macht.

Und die Uploadfunktion klappt. Selbst die hoch geladenen EXE-Dateien kann ich im Ordner "files" ausführen.

Output-Buffering - negativ. Aber im Nachhinein hinzugefügt. Problem weiter bestehend.


@ChrisB
Negativ. Ansi/ASCII.

@lstegelitz
Glaube, dass kann ich mir sparen. Irgendwas scheint nach dem Download mit der Datei nicht zu stimmen.

Noch irgendwelche andere Lösungen?
Oder habt ihr eine andere Lösung für den Download parat (mit $_GET)?
Hm ....
JackCimberly ist offline   Mit Zitat antworten
Alt 03.08.2011, 18:55  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von JackCimberly Beitrag anzeigen
Hex-Code: Beginnend bei mir mit "0D 0A 4D 5A".
Dass 0D 0A ein Zeilenumbruch ist, solltest du aber selber wissen ...
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 03.08.2011, 19:08  
Neuer Benutzer
 
Registriert seit: 19.07.2011
Beiträge: 14
PHP-Kenntnisse:
Fortgeschritten
JackCimberly befindet sich auf einem aufstrebenden Ast
Standard

@ChrisB

Ne, das wusste ich nicht. Hm ... aber nirgendwo wird ein <br /> ausgegeben.

Edit
Doch, unsichtbare Leerzeichen - 2x in der _mysql.php.
Jetzt läuft alles.

Danke Euch.
JackCimberly ist offline   Mit Zitat antworten
Alt 03.08.2011, 19:34  
Erfahrener Benutzer
 
Benutzerbild von dreamcatcher
 
Registriert seit: 28.12.2010
Beiträge: 603
PHP-Kenntnisse:
Anfänger
dreamcatcher wird schon bald berühmt werden
Standard

Also dass du das nicht wusstest... ist ja fast noch schlimmer als nicht zu wissen was ein Hurenkind ist :P

@ChrisB
0D steht für CR
0A steht für LF

Ich versteh den Sinn dahinter jedoch nicht.
CR = Marker wird zum Anfang der Line ausgerichtet
LF = Er wird eine Zeile tiefer verschoben

Wieso hat man das von der Schreibmaschine so übernommen ?
Wäre es nicht viel sinniger einen Zeilenumbruch nur durch ein LF zu kennzeichenen und somit zwei Zeichen zu sparen ?
Ich mein wofür muss der Marken zurückgesetzt werden, wenn die neue Zeile sowieso IMMER nur eine Zeile hat worauf dieser gesetzt werden kann ?
dreamcatcher ist gerade online   Mit Zitat antworten
Alt 03.08.2011, 19:36  
Neuer Benutzer
 
Registriert seit: 19.07.2011
Beiträge: 14
PHP-Kenntnisse:
Fortgeschritten
JackCimberly befindet sich auf einem aufstrebenden Ast
Standard

@dreamcatcher

Man kann nicht alles wissen. :P
Aber bei mir waren am Ende der PHP-Datei zwei "unsichtbare" Zeilenumbrüche.
Im Editor sichtbar mit zwei zusätzlichen Zeilen ohne Inhalt.
JackCimberly ist offline   Mit Zitat antworten
Alt 03.08.2011, 20:06  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Ich versteh den Sinn dahinter jedoch nicht.
CR = Marker wird zum Anfang der Line ausgerichtet
LF = Er wird eine Zeile tiefer verschoben
Weil Drucker auch mal anders funktioniert haben.
http://de.wikipedia.org/wiki/Line_feed
Zitat:
Mit dem Aufkommen der elektronischen Datenverarbeitung und der dazugehörigen Peripheriegeräte wie Drucker und Bildschirm wurde auf die Technik der Fernschreiber zurückgegriffen, um den Zeilenumbruch darzustellen und den Cursor zu steuern.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 03.08.2011, 23:56  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

tja .. ein ordentlicher Windows Zeilenumbruch braucht nunmal beide Zeichen ..

und offenbar ist da in einer der Scriptdateien VOR <?PHP eben ein Zeilenumbruch, der da nicht hingehört
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 03.08.2011, 23:59  
Neuer Benutzer
 
Registriert seit: 19.07.2011
Beiträge: 14
PHP-Kenntnisse:
Fortgeschritten
JackCimberly befindet sich auf einem aufstrebenden Ast
Standard

@Eagle275

Eher am Ende der php-Datei.
Aber hat sich nun glücklicherweise erledigt. Danke.
JackCimberly ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Bild erst nach 2. Download lesbar... Floezen PHP-Fortgeschrittene 1 09.06.2011 00:02
Problem mit PHP Download per Header Befehl Kingkarule PHP Tipps 2010 8 22.11.2010 16:12
[Erledigt] Download einer Datei über Header prof3 PHP Tipps 2010 3 31.08.2010 13:41
Zweck von Keep-Alive Header bei HTTP 1.1 Thalo Server, Hosting und Workstations 1 16.03.2010 21:20
[Erledigt] mod_rewrite, Datei Downloads und falsche Header kip Server, Hosting und Workstations 1 16.09.2009 12:37
[Erledigt] download via header mistermint PHP Tipps 2009 10 04.08.2009 20:22
Download einer csv-Datei netty PHP-Fortgeschrittene 6 02.05.2008 15:53
Download starten (header funktion), vorher Text ausgeben? Harakiri81 PHP-Fortgeschrittene 19 16.05.2006 21:15
header download MK0 PHP Tipps 2006 4 24.02.2006 23:30
header download lädt mp3 als text ins browserfenster PHP-Fortgeschrittene 12 19.08.2005 17:22
Header Download in Schleife - Wie? PHP Tipps 2005-2 2 02.08.2005 09:50
Problem: Cannot modify header information Alpha Centauri PHP Tipps 2005 11 25.04.2005 13:05
[Erledigt] Header Probleme beim Download PHP-Fortgeschrittene 4 15.03.2005 11:40
[Erledigt] ZIP Download - Header Problem PHP-Fortgeschrittene 1 19.08.2004 02:41
Warning: Cannot modify header... einbinden nicht möglich? PHP Tipps 2004 2 07.08.2004 15:06


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum