выборочная загрузка

Статус
В этой теме нельзя размещать новые ответы.

kalobok

Новичок
выборочная загрузка

я нашел вот такой вот скриптик для загрузки на ftp сервер.
но! в скрипте можно только указать адрес ftp сервера юзернаме и пароль а нужно чтоб юзер мог выбрать адрес хоста а скрипт уже сам взял из записи пароль и юзернаме для него.
например если есть три адреса ftp://adress1 ,ftp://adress2 , ftp://adress3 то выбрав один из них подбирается и пароль и юзрнаме. в пхп я еще слаб и не дошел даже до массивов
а тут на тебе такая штука помогите пожалуйста.

PHP:
<?
//uses $_FILES[] global array
//see manual for older PHP version info

//This function will be used to get the extension from the filename
function get_extension($file,$length=-1){
$p = strrpos($file,".");
$p++;
if($length!=-1){
  $ext = substr($file,$p,$length);
}
if($length==-1){
  $ext = substr($file,$p);
}
$ext = strtolower($ext);
return $ext;
}

//Not good practice, but here anyway
//change to suit your needs
//also some have to be set in the ini
//for this to correctly work

//2meg max
ini_set("upload_max_filesize","2M");

//turn on file uploads
ini_set("file_uploads","1");

//set your temp dir
ini_set("upload_tmp_dir","/tmp");

//set post size large enough to accomidate
//3 2meg files and some overhead
ini_set("post_max_size","8M");

?>
<html>
<head>
  <title>ftp connect and upload</title>
</head>
<body>
<?
//check to see if we have submited yet
if($_POST["submit"]!="submit"){
//not yet so lets make the form
?>
<p>Upload Files to ftp site (2M MAX)</p>
<p>
  <input type="file" name="userfiles[]2">
<form name="fileup" method="post" enctype="multipart/form-data" action="<? echo $PHP_SELF; ?>">
<input type="file" name="userfiles[]"><br>
<input type="file" name="userfiles[]"><br>
<br>
<!-- change below to your max -->
<input type="hidden" name="MAX_FILE_SIZE" value="2000000">
<input type="submit" value="submit" name="submit">
</form>
</p>
<?
}
//see if we have submited and that the files array has been set
if(($_POST["submit"]=="submit")&&(is_array($_FILES['userfiles']))){

$ftp_user_name="ftpuser"; //change to ftp username
$ftp_user_pass="ftppass"; //change to ftp password
$ftp_server="yoursitehere.com"; //change to ftp url
$ftp_dump_dir="/destination"; //change to destination directory

//go through all the files
for($x=0;$x<count($_FILES['userfiles']['name']);$x++){

  //now we do some file checking

  //check to see if file is there
  if($_FILES['userfiles']['name'][$x]!="none"){
  //file has a name
  //check filesize
      if($_FILES['userfiles']['size'][$x]!=0){
        //file is larger than 0 bytes
          //Check to see if it is uploaded
          if(is_uploaded_file($_FILES['userfiles']['tmp_name'][$x])){
               //file has been uploaded!
             //let the user know their file has be uploaded
             echo "file ".$_FILES['userfiles']['name'][$x]." uploaded!<br>";
             //conect to ftp server
             $conn_id = ftp_connect($ftp_server);
            // login with username and password
              $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
            // check connection
             if ((!$conn_id) || (!$login_result)) {
              echo "FTP connection has failed!<br>";
              echo "Attempted to connect to $ftp_server for user $ftp_user_name";
              exit;
            } else {
                 echo "Connected to $ftp_server! <br>";
                 //set PASV mode
                 if(!ftp_pasv($conn_id,TRUE)){
                     echo "Could not enter PASV mode!";
                 }
                 //rename to file#_date.ext
                 $filename = "file".($x+1)."_".date("MdY");
                 $filename.= ".".get_extension($_FILES['userfiles']['name'][$x],3);

                 //change directory
                 if (@ftp_chdir($conn_id, $ftp_dump_dir)) {
                     //maybe you want to make sure we are in the correct directory
                    echo "Current directory is now : ", ftp_pwd($conn_id), "\n";
                } else {
                  //you want to know if it didn't work
                  echo "Couldn't change directory\n";
                }

                  //upload the file and let the user know what happened
                if(ftp_put($conn_id,$filename,$_FILES['userfiles']['tmp_name'][$x],FTP_BINARY)){
                       echo "File ".$_FILES['userfiles']['name'][$x]." was sent successfully<br>";
                    echo "File was named ".$filename."<br>";
                }else{
                       echo "There was a problem sending file ".$_FILES['userfiles']['name'][$x]."<br>";;
                         }
                }
                // close the FTP stream
                ftp_close($conn_id);
            }
            else echo"File was not uploaded!<br>";
        }
    }
    echo "<br>";

}//end for loop

}
//That's all folks!
?>
</body>
</html>
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху