![]() |
Datei-Upload über http - PHP wie?
Hallo,
ich möchte eine Datei mit meinem Delphi-Programm per http hochladen. Dazu nutze ich den Code aus der CodeLib, das stellt auch kein Problem dar. Aber wie muss ich eine php-Datei aufbauen, die die Datei entgegennimmt? Vorher wird noch geprüft, ob eine Variable $_POST['ChkSum'] != 'BestimmterWert' ist, wenn nicht, soll der Upload verweigert werden. Andernfalls kann die Datei unter dem Originalnamen abgelegt werden, der auch mitgesendet wird. Ich habe schon gesucht, konnte aber mit den Beispielen hier nicht so recht etwas anfangen (unter anderem, weil es meistens Fragen zu Fehlern dabei und ohne Lösung waren). Kennt Jemand ein paar Funktionen dafür? Danke, ManuMF |
Re: Datei-Upload über http - PHP wie?
Was hast du schon?
|
Re: Datei-Upload über http - PHP wie?
In PHP habe ich leider nur Grundkenntnisse. Die Abfrage ist natürlich leicht, aber mir fehlt, wie ich die hochgeladene Datei speichere und eben bei einem falschen Check-Wert den Upload verweigere.
Sprich: So gut wie nichts. (In manchen Beispielen tauchte move_Uploaded_file auf, aber ich weiß nicht, ob das für meinen Fall richtig ist.) |
Re: Datei-Upload über http - PHP wie?
Hier ist mal mein Upload Script, mit kleinen User System, Endung Check und Log:
Code:
<?php
$user = array ( "user" => "pass" ); $path = "http://domain.de/path/"; $forbitten_ext = array("php", "php3", "php4", "php5", "phtml", "jsp", "asp", "aspx", "pl", ".htaccess"); if ( !(isset($_POST['user']) && isset($_POST['pass'])) ) {echo "Access Denied"; exit;} if (isset($user[$_POST['user']])) { if ($user[$_POST['user']] != $_POST['pass']) { echo "Access Denied"; exit; } } else { echo "Access Denied"; exit; } function br() { return chr(13).chr(10); } function addlogentry($file, $entry) { $handle = fopen($file, "a"); fwrite($handle, date("[m.d.y g:i]: ").$entry. br()); fclose($handle); } function checkexts($filename, $ext) { $result = false; for ($i=0; $i<sizeof($ext);$i++) { if (strpos($filename, ".".$ext[$i])) { return true; } } return $result; } if ( isset($_FILES['file']) ) { if (!checkexts($_FILES['file']['name'], $forbitten_ext)) { move_uploaded_file($_FILES['file']['tmp_name'], "./files/" . $_FILES['file']['name']); echo 'Datei "'.$_FILES['file']['name'].'" hochgeladen'.br().br().'URL: '.$path.'files/'.$_FILES['file']['name']; addlogentry("access.log", $_FILES['file']['name']." upload von ". $_POST['user']); } else { echo "Access Denied"; exit; } } ?> |
Re: Datei-Upload über http - PHP wie?
Danke, das sollte mir erst mal weiterhelfen. Ich werde es mal ausprobieren.
|
Re: Datei-Upload über http - PHP wie?
|
Re: Datei-Upload über http - PHP wie?
Oh ja, Klasse :thumb:
Genau das, was ich brauche. Gruß, ManuMF |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz