Ergebnis 1 bis 7 von 7

Thema: upload script -.-

  1. #1
    gelöschter User
    Gast

    Standard upload script -.-

    hey,
    ich versuche durch per angabe des pfads und der datei diese hochzuladen aber irgendwie wenn ich folgenden pfad eingebe:
    c:\temp\11.JPG
    kommt dieser raus:
    c:\\temp\\11.JPG

    und deswegen funktioniert warscheinlich auch der upload nicht :\

    Code:
    <?php
    $dest = "test";
    if&#40;$_SERVER&#91;'REQUEST_METHOD'&#93; == 'POST'&#41;
    &#123;
      extract&#40;$_POST&#41;;
      $datei = $pfad.$file;
      if&#40;move_uploaded_file&#40;$datei, $dest&#41;&#41; 
      &#123;
        echo "complete&#58; ".$datei." to ".$dest;
      &#125;
      else
      &#123;
        echo "failed&#58; ".$datei." to ".$dest;
      &#125;
     
    &#125;
    else
    &#123;
      
    
    echo '
    <form action="'.$_SERVER&#91;'PHP_SELF'&#93;.'" method="post" enctype="multipart/form-data"> 
    <table border="1" width="800" align="center">
    <tr>
    <td>File&#58;</td><td><input type="text" name="pfad" size="30" /><input type="text" name="file" size="30" /></td>
    </tr>
    <tr>
    <td>Submit&#58;</td><td><input type="submit" value="Upload" /></td>
    </tr>
    </table>';
    &#125;
    ?>
    Gruß crAzywuLf
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    Hm so leicht sind Datei Upload leider nicht =)

    Code:
    <?php
    $dest = "test";
    var_dump&#40;$_FILES&#41;;
    if&#40;$_SERVER&#91;'REQUEST_METHOD'&#93; == 'POST'&#41;
    &#123;
      extract&#40;$_POST&#41;;
      $datei = $pfad.$_FILES&#91;'file'&#93;&#91;'name'&#93;;
      if&#40;move_uploaded_file&#40;$_FILES&#91;'file'&#93;&#91;'tmp_name'&#93;, $_FILES&#91;'file'&#93;&#91;'name'&#93;&#41;&#41;
      &#123;
        echo "complete&#58; ".$datei." to ".$dest;
      &#125;
      else
      &#123;
        echo "failed&#58; ".$datei." to ".$dest;
      &#125;
     
    &#125;
    else
    &#123;
     
    
    echo '
    <form action="'.$_SERVER&#91;'PHP_SELF'&#93;.'" method="post" enctype="multipart/form-data">
    <table border="1" width="800" align="center">
    <tr>
    <td>File&#58;</td><td><input type="file" name="file" size="30" /></td>
    </tr>
    <tr>
    <td>Submit&#58;</td><td><input type="submit" value="Upload" /></td>
    </tr>
    </table>';
    &#125;
    ?>
    Habs mal kurz etwas abgeändert.
    Uploads können nur im <input type="file"> Tag ausgeführst werden.
    SIe dind dann im array $_FILES zu verfügung.

  3. #3
    gelöschter User
    Gast

    Standard

    Genau das wollte ich nicht^^

  4. #4
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    Ja, sorry, aber mir ist keine andere Möglichkeit via PHP bekannt ...

  5. #5
    gelöschter User
    Gast

    Standard

    Könnte mann sowas mit Perl realisieren?

  6. #6
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    Hm, bin zwar kein PERL experte, aber soweit ich weis is es da mit den Uploads genauso wie in PHP sprich über <input type="file">.

  7. #7
    Forum Guru
    Registriert seit
    04.04.2005
    Beiträge
    4.139
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Ich habe mir erst letzten Monat ein Upload Script gemacht.

    Es kann Dateiendungen blockieren ($block_ext)
    Es erstellt für jede Dateiendung einen eigenen Ordner.

    Code:
    <?php
    /*
    PHP Upload Script by &#58;&#58;RMB&#58;&#58;
    Tested with PHP v.5.1.4 & 5.20
    Date&#58; February 2007
    */
    
    //Get the File Extension
    function get_fileext&#40;$filename&#41; &#123;
    	$file_ar = explode&#40;'.',$filename&#41;;
    	$last = $file_ar&#91;count&#40;$file_ar&#41;-1&#93;;
    	return '.'.$last;
    &#125;
    
    $block_ext = array&#40;'.7z', '.asx', '.avi', '.bin', '.cab', '.cda', '.exe', '.iso', '.jar', '.mp3', '.mp4', '.mpg', '.mpeg', '.mov', '.ogg', '.pif', '.pps', '.torrent', '.wav', '.wma', '.wmv', '.zip'&#41;;
    
    $error=0;
    $error_msg = '';
    
    echo $upload_dir = getcwd&#40;&#41;.'\files\\';
    if&#40;!file_exists&#40;$upload_dir&#41;&#41;mkdir&#40;$upload_dir&#41;; //Create Upload dir
    
    
    	//Check max Site
    		$user_maxupload = 20000000;
    		$max_ufs = ini_get&#40;"upload_max_filesize"&#41;;
    		if &#40;substr&#40;$max_ufs, -1&#41;=='M'&#41; &#123;$up = substr&#40;$max_ufs,0,-1&#41;.'000000'; &#125;
    		elseif &#40; substr&#40;$max_ufs, -1&#41;=='K'&#41; &#123;$up = substr&#40;$max_ufs,0,-1&#41;.'000'; &#125;
    		else &#123; $up = $max_ufs; &#125;
    
    		if&#40;$user_maxupload<=$up&#41;$size=$user_maxupload;else $size=$up;
    if&#40;$_FILES&#41; &#123;
    	if&#40;$_FILES&#91;'userfile'&#93;&#91;'error'&#93;!=0&#41; &#123; $error_msg.= 'Infolge eines Technischen fehlers konnte die Datei nicht hochgeladen werden.
    '; $error++; &#125; else &#123;
    		if&#40;$_FILES&#91;'userfile'&#93;&#91;'size'&#93;>=$size&#41; &#123; $error_msg.= 'Die Datei ist zu gross.
    '; $error++; &#125;
    		if&#40;in_array&#40;get_fileext&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;, $block_ext&#41;&#41;&#123; $error_msg.= 'Diese Datei Endung ist nicht erlaubt.
    '; $error++; &#125;
    		if&#40;strlen&#40;$_FILES&#91;'userfile'&#93;&#91;'tmp_name'&#93;&#41;>=1 && !is_uploaded_file&#40;$_FILES&#91;'userfile'&#93;&#91;'tmp_name'&#93;&#41;&#41; &#123; $error_msg.= 'Infolge eines Technischenfehlers konnte die Datei nicht hochgeladen werden.
    '; $error++; &#125;
    	&#125;
    	
    	
    	if&#40;$error==0&#41; &#123;
    		$_FILES&#91;'userfile'&#93;&#91;'name'&#93; = strtolower&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;;
    				
    				
    		//vul
    			if&#40;!file_exists&#40;$upload_dir.substr&#40;get_fileext&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;,1&#41;&#41;&#41;mkdir&#40;$upload_dir.substr&#40;get_fileext&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;,1&#41;&#41;;
    					
    		$full_dest_dir = $upload_dir.substr&#40;get_fileext&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;,1&#41;.'/';
    						
    						
    			if&#40;strpos&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;,'.'&#41;>=1 && strlen&#40;get_fileext&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;&#41;<=5&#41;
    				$full_dest = $upload_dir.substr&#40;get_fileext&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;,1&#41;.'\\'.$_FILES&#91;'userfile'&#93;&#91;'name'&#93;;
    			else &#123; $full_dest = $upload_dir.'other/'.$_FILES&#91;'userfile'&#93;&#91;'name'&#93;; if&#40;!file_exists&#40;$upload_dir.'other'&#41;&#41;mkdir&#40;$upload_dir.'other'&#41;; &#125;
    			
    			//Microtime 
    			for &#40;$i=1; file_exists&#40;$full_dest&#41;; $i++&#41;
    				&#123;
    					if&#40;strpos&#40;$_FILES&#91;'userfile'&#93;&#91;'name'&#93;,'.'&#41;>=1&#41; &#123;
    						$filename_ar = explode&#40;'.', $_FILES&#91;'userfile'&#93;&#91;'name'&#93;&#41;;
    						$filename_ar&#91;count&#40;$filename_ar&#41;-2&#93; = $filename_ar&#91;count&#40;$filename_ar&#41;-2&#93;.'_'.$i;
    						$filename = implode&#40;'.',$filename_ar&#41;;
    							$full_dest = $full_dest_dir.$filename;
    					&#125; else &#123; $full_dest = $full_dest.'_'.$i;  &#125;
    							if&#40;$i>=500&#41;&#123; $error++; $error_msg.= 'Kann Filename nicht generieren.
    '; exit; &#125;
    					&#125;
    						
    						//vul
    						if&#40;move_uploaded_file&#40;$_FILES&#91;'userfile'&#93;&#91;'tmp_name'&#93;, $full_dest&#41;&#41; &#123;
    							$erfolg=1;
    							$erfolg_msg = 'Die Datei wurde erfolgreich hochgeladen.
    '.$full_dest;
    						&#125; else &#123; $error++; $error_msg.= 'File konnte nicht hochgeladen werden.
    '; &#125;
    						
    				
    	&#125; 
    				
    &#125;
    //if&#40;$_FILES&#41;print_r&#40;$_FILES&#41;;
    
    if&#40;$error>=1&#41;echo '<div style="border&#58;1px solid #CC0000; padding&#58;10px; background-color&#58;#FFCC00;">'.$error_msg.'</div>';
    if&#40;$erfolg==1&#41;echo '<div style="border&#58;1px solid #166F07; padding&#58;10px; background-color&#58;#ADFF9F;">'.$erfolg_msg.'</div>';
    
    
    ?>
    
    
    
    <form enctype="multipart/form-data" action="" method="post">
    Upload&#58; <input name="userfile" type="file" value="search file..." />
    <input type="submit" value="upload" />
    </form>
    und diese Funktion hilft bei schlechten Pfaden

    Code:
    function cleanUrl&#40;$url&#41; &#123;
    
    	//Split to array and filter the empty items and make a new string
    	$url = '/'.implode&#40;'/',array_filter&#40;explode&#40;'/',implode&#40;'/',array_filter&#40;explode&#40;'\\',$url&#41;&#41;&#41;&#41;&#41;&#41;.'/';
    	//Remove the last slash if is a file
    	if&#40;strpos&#40;$url,'.'&#41; && substr&#40;$url,-1&#41;=='/'&#41;$url = substr&#40;$url,0,-1&#41;;
    	
    	//For Windows URLs with X&#58;\dirs
    	if&#40;ereg&#40;"&#40;&#91;A-Z&#93;&#123;1&#125;&#41;&#58;", $url&#41;&#41;$url = substr&#40;$url,1&#41;;
    	
    	return $url;
    &#125;
    Facebook Gruppe: Böses Encoding

Ähnliche Themen

  1. upload script hat nen fehler
    Von im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 09.09.2006, 15:54
  2. PHP upload script will nicht wie ich will :)
    Von Felix K. im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 17.02.2006, 12:23
  3. upload script
    Von cookie im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 9
    Letzter Beitrag: 11.01.2006, 02:01
  4. Suche ein Upload Script
    Von schadhee im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 28.01.2005, 00:30
  5. upload script
    Von gelöschter User im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 29.11.2004, 16:46

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •