title image


Smiley Re: Formular fuer Datei upload, file aus URL uploaden?
Hi,



wenn du zusätzlich zum Dateiupload-Formularsteuerelement (Upload lokaler Dateien) ein Textfeld für die Angabe einer URL zu einer globalen Datei machst, dann kannst du speziell für den Fall, dass jemand das "Download-Textfeld" belegt hat, dies serverseitig wie folgt verarbeiten:



$file = join('',file($_REQUEST["name_des_download_textfeldes"]));

$new_file = fopen("neuer_dateiname","w");

fwrite($new_file,$file);

fclose($new_file);



Hier ein Beispiel (Online-Demo):







<?php



function get_dateiname($dir,$dateiname)

{

$dateiname = pathinfo($dateiname);

$dateiname = $dateiname["basename"];

$dateiname = explode(".",$dateiname);

$temp_dateiname = $dateiname[0];

$dateiname_str = $dateiname[0];

$temp_endung = $dateiname[1];



$i = 2;



while(file_exists($dir."/".$temp_dateiname.".".$temp_endung))

{

$temp_dateiname = $dateiname_str.$i;

$i++;

}



return $temp_dateiname.".".$temp_endung;

}





if(!empty($_FILES["file_local_address"]["name"]))

{

//Uploadprozess

$dateiname = "files/".get_dateiname("files",$_FILES["file_local_address"]["name"]);



copy($_FILES["file_local_address"]["tmp_name"],$dateiname);

}

else if(!empty($_REQUEST["file_global_address"]))

{

//Downloadprozess

$dateiname = $_REQUEST["file_global_address"];

$file = join('',file($dateiname));

$dateiname = "files/".get_dateiname("files",$dateiname);

$new_file = fopen($dateiname,"w");

fwrite($new_file,$file);

fclose($new_file);

}



?>

<html>

<head>

<style type="text/css">

<!--



img

{

border-width:0px;

}



-->

</style>

</head>

<body>

<form action="index.php" method="post" enctype="multipart/form-data">

<p>

Dateiupload:&nbsp;&nbsp;<input type="file" name="file_local_address">

</p>

<p>

Dateidownload:&nbsp;&nbsp;<input name="file_global_address" type="text">

</p>

<p>

<input name="submit" type="submit" value="abschicken">

</p>

</form>

<h3>Bereits hochgeladene Dateien:</h3>

<table>

<?php



$target = "files";



$dir = opendir($target);



while ($file = readdir($dir))

{

if($file != "." && $file != "..")

{

$pathinfo = pathinfo($target."/".$file);



if(in_array(strtolower($pathinfo["extension"]),array("jpg","gif","jpeg","bmp","png")))

{



?>

<tr>

<td style="vertical-align:top; padding-right:15px;"><a href="files/<?=$file?>" target="_blank"><img src="files/<?=$file?>" width="50"></a></td>

<td><?=$file?></td>

</tr>

<?php



}

else

{



?>

<tr>

<td style="vertical-align:top; padding-right:15px;">&nbsp;</td>

<td><a href="files/<?=$file?>" target="_blank"><?=$file?></a></td>

</tr>

<?php



}

}

}



closedir($dir);



?>

</table>

</body>

</html>







MfG Murdoch!

aktuelle Winamp Playlist                Hörgewohnheiten (Last.fm)



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: