Я работаю над базовым приложением блога в Codeigniter 3.1.8 и Bootstrap 4.
Каждый пост имеет основное изображение, следовательно, в таблице posts
есть столбец post_image
.
У меня есть эта проблема, когда изображение поста заменяется новым изображением , которое имеет то же имя (файла) , что и старое: имя файла изображения увеличивается - mypic .jpg становится mypic1.jpg - но строка имени файла не обновляется в таблице posts
.
Код такой, и я считаю, что определил источник проблемы (прокомментировано):
if(!$this->upload->do_upload()){
$errors = array('error' => $this->upload->display_errors());
//Keep the current image name in the posts table
//If no new image is loaded
$post_image = $this->input->post('postimage');
} else {
$data = array('upload_data' => $this->upload->data());
// This line is the source of the problem
$post_image = $_FILES['userfile']['name'];
}
Я не знаю, как правильно увеличить его или даже если увеличение является лучшим решением.
Вопрос: Какой самый надежный (надежный) способ решения этой проблемы?
EDIT:
Для согласованности, мне, вероятно, следует обновить исходный (когда сообщение создано ) код загрузки:
if (!$this -> upload -> do_upload()) {
$errors = array('error' => $this -> upload -> display_errors());
$post_image = 'default.jpg';
} else {
$data = array('upload_data' => $this -> upload -> data());
$post_image = $_FILES['userfile']['name'];
}