这个想法是将当前用户选择的图像移动到数据库中的另一个路径。这是控制器:
public function makeProfile() {
if (isset($_GET['makeProfile']));
$data['user_id']= $this->session->userdata['user_id'];
$fileName = ('uploads/'.$fileName);
if($this->images_model->makeProfile($data, $fileName)) {
echo "Success";
$msg = 'File successfully moved to profile';
redirect(site_url().'main/');
}else{
echo "Failure";
模型:
Public function makeProfile ($data, $fileName) {
return $this->db->get_where('images', ['user_id' => $this->session->userdata('user_id')])->row();
move_uploaded_file('uploads/'.$fileName, 'uploads/profile/'.$fileName);
if($this->db->affected_rows() == '1') {
return TRUE;
}
return FALSE;
}
视图:
<a class="profile" href="<?= base_url('main/makeProfile') ?>">Make Profile</a>
我可能会把这一切都弄错了,但是希望这里的某个人可以引导我朝着正确的方向前进。预先感谢您提供的所有信息!
答案 0 :(得分:0)
模型中的功能makeProfile
出现问题。您正在获取记录,然后将其返回。以下代码未执行
Public function makeProfile ($data, $fileName) {
$fileName= $this->db->get_where('images', ['user_id' => $this->session->userdata('user_id')])->row()->image;
// Will copy foo/test.php to bar/test.php
// overwritting it if necessary
copy('uploads/'.$fileName, 'uploads/profile/'.$fileName));
if($this->db->affected_rows() == '1') {
return TRUE;
}
return FALSE;
}
在其手册页中引用几个相关的句子:
将文件源的副本复制到目的地。
如果目标文件已经存在,它将被覆盖。