Thema: Delphi Daten - Upload - MySQL

Einzelnen Beitrag anzeigen

Benutzerbild von user0815
user0815

Registriert seit: 5. Okt 2007
331 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Daten - Upload - MySQL

  Alt 23. Jun 2008, 12:09
Habe das ganze jetzt mit einem Post Request umgesetzt.

Delphi-Quellcode:
uses
  IdMultipartFormData;

...

procedure TForm1.Button1Click(Sender: TObject);
var
  filename: TFileName;
  Data : TIDMultiPartFormDataStream;
begin
  filename := ExtractFilePath(ParamStr(0)) + 'test.txt'; // Anwendungsverzeichnis

  if FileExists(filename) then
  begin

    try
      Data := TIdMultiPartFormDataStream.Create;
      Data.AddFile('userfile', filename, 'txt');
      Data.Position := 0;

      Memo1.Lines.Text := IdHTTP.Post('http://localhost/eigenesverzeichnis/test.php', Data);
    finally
      Data.Free;
    end;

  end;
end;
test.php Code

Code:
<?php

/*   
   In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead of $_FILES.

   basename
   ==========================================================================================
   $path = "/home/httpd/html/index.php";
   $file = basename($path);                 // $file is set to "index.php"
   $file = basename($path, ".php");          // $file is set to "index"
   
   $_FILES
   ==========================================================================================    
   $_FILES['thefile']['name']    
   Der Name der Datei, wie sie auf dem Clientsystem genannt wurde. Eventuelle Verzeichnisangaben werden nicht mitgesendet.
    
   $_FILES['thefile']['tmp_name']    
   Pfad und Name der temporären Datei, wie sie im Filesystem des Servers zu finden ist
   (meistens in der Form /tmp/php234lksdaflk) - diese Datei wird am Skriptende wieder gelöscht.
    
   $_FILES['thefile']['size']    
   Die Größe der Datei in Bytes
   
   $_FILES['thefile']['type']
   Der Mime-Type der Datei, wie der Client sie lieferte (z.B. image/gif).
   
   $_FILES['userfile']['error']   
   The error code associated with this file upload. This element was added in PHP 4.2.0 
*/
    
   $uploaddir = getcwd() . "/upload/"; // getcwd = Gets the current working directory
   $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
   
   echo '<pre>';
   
   if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
   {
      echo "File is valid, and was successfully uploaded.\n";
   } 
   else
   {
      echo "Possible file upload attack!\n";
   }
   
   echo 'Here is some more debugging info:\n';
   print_r($_FILES);
   
   print "</pre>";
?>
Memo Feld Ausgabe

Code:
<pre>File is valid, and was successfully uploaded.
Here is some more debugging info:\nArray
(
    [userfile] => Array
        (
            [name] => test.txt
            [type] => txt
            [tmp_name] => D:\xampp\tmp\phpFE.tmp
            [error] => 0
            [size] => 89019
        )

)
</pre>
Greetz
user0815
  Mit Zitat antworten Zitat