Steusi
Nasenbär
Hallo Leute ich habe ein großes Problem ich habe eine ASC Datei auf meinem Server, welche ich bearbeite und danach wieder downloaden möchte. Nur der download klappt nicht.
Die Datei soll nicht angezeigt werden. Wie bekomme ich es hin?
1. Versuch:
Mein Problem ich weiß nicht welchen Pfad ($dir) ich angeben muss.
Meine Versuche:
Fehlermeldung (welche er in die zudownloadende Datei schreibt
2. Versuch
Fehler: Datei existiert nie.
Ich hoffe mir kann jemand helfen.
Am besten bis 16:00 Uhr ich DANKE euch
Die Datei soll nicht angezeigt werden. Wie bekomme ich es hin?
1. Versuch:
PHP:
function makeDownload($file, $dir, $type) {
header("Content-Type: $type");
header("Content-Disposition: attachment; filename=\"$file\"");
readfile($dir.$file);
}
if (isset($_GET["download"]) && !strcmp( $_GET['download'], '1' )) {
makeDownload("Datei_neu.ASC","uploaded_files/","application/pgp");
}
Mein Problem ich weiß nicht welchen Pfad ($dir) ich angeben muss.
Meine Versuche:
Code:
C:\\xampp\\htdocs\\PROJEKT\\uploaded_files\\
C:\/xampp\htdocs\/PROJEKT\/uploaded_files\/
C:\xampp\htdocs\PROJEKT\uploaded_files\
C:/xampp/htdocs/PROJEKT/uploaded_files/
uploaded_files/
localhost/PROJEKT/uploaded_files/
und vieles mehr
Fehlermeldung (welche er in die zudownloadende Datei schreibt
PHP:
<br />
<b>Warning</b>: readfile(uploaded_files/Bader_neu.ASC) [<a href='function.readfile'>function.readfile</a>]: failed to open stream: No such file or directory in <b>C:\xampp\htdocs\Bader\lib\download.php</b> on line <b>9</b><br />
2. Versuch
PHP:
$path = "C:\\xampp\\htdocs\\PROJEKT\\uploaded_files";
if (file_exists($path . $_GET['file'])) {
header("Content-type: application/octet-stream\n");
header("Content-disposition: attachment; filename=\"" . $_GET['file'] . "\"\n");
header("Content-transfer-encoding: binary\n");
header("Content-length: " . filesize($path . $_GET['file']) . "\n");
$fp = fopen($path . $_GET['file'], "r");
fpassthru($fp);
fclose ($fp);
} else
echo "datei existiert nicht";
Fehler: Datei existiert nie.
Ich hoffe mir kann jemand helfen.
Am besten bis 16:00 Uhr ich DANKE euch