move_uploaded_file问题

时间:2014-03-21 06:52:35

标签: php file-upload

我有一个包含文本框并具有特定值的表单。我有一个该表格的视频上传文件。我正在使用 move_uploaded_file 功能,我将视频文件成功上传到数据库并存储在特定文件夹中,并在表单中显示为缩略图。

我再次成功更新了在DB中替换并存储在文件夹中的视频文件。

场景 - 更新时,如果我没有选择要更新的视频,空值。并且找不到对象。

此处更新视频不是强制性的,因此,如果我没有选择任何视频,它应该保留我以前的视频文件,并且应该显示

这是我的更新表格代码

<form id="My_Form" action="currentpage.php" method="post" enctype="multipart/form-data">

<input type="file" id="Edit_Vid" name="Edit_Vid">

                <?php                   
                        $output_dir = "houseadvideos/";
                          if(isset($_FILES["Edit_Vid"]))
                           {
                        if($_FILES["Edit_Vid"]["error"] > 0)
                        { 
                            $result['error'] = "Error: " . $_FILES["file"]["error"] . "<br>";
                        }
                        else
                        {
                            move_uploaded_file($_FILES["Edit_Vid"]["tmp_name"],$output_dir. $_FILES["Edit_Vid"]["name"]);    
                            $result['success'] = "Uploaded Document :".$_FILES["Edit_Vid"]["name"];         
                        }       
                        }
                        else{   
                        $result['error'] = 'upload document';   
                            }
                        ?>

  </form>

更新数据库值的代码

function UpdateForm($id,$name,$type,$dimension,$video,$duration,$uploaddate){
    if(!$this->DBLogin())
    {
        $this->HandleError("Database login failed!");
        return false;
    }      
    $a=$varArray['upvid'];
    $file = str_replace( "\\", '/', $a );
    $ofile = basename( $file );
    $oofile ="myfolder/".$ofile;
    $date = date('m/d/Y', time()); 
    $qry ="update column_name set name='$name',type='$type',dimension='$dimension',video='$video',duration='$duration' where id=$id"; 
    $result = mysql_query($qry,$this->connection);
    return $result;
}

提前致谢

1 个答案:

答案 0 :(得分:1)

控制器模型绑定:

$pathToVideo = '';

if(is_uploaded_file($_FILES["Edit_Vid"]["tmp_name"])) {
   move_uploaded_file($_FILES["Edit_Vid"]["tmp_name"],$outp.. and so on
   //store in database
   $pathToVideo = 'the new path';
} else {
  //update model with last inserted video in database
  //SELECT FROM table WHERE user.. ODER BY ID DESC LIMIT 1,0
  $pathToVideo = 'the old path';
}

//serialize your updated video path back
//render form with updated model

评论后编辑(如何获取最后一次视频记录)

function GetLastVideoRecord() {
    $qry ="SELECT * FROM column_name ORDER BY ID DESC LIMIT 1,0"; 
    $result = mysql_query($qry, $this->connection);
    $row = mysql_fetch_assoc($result);
    return $row[0];
}