Я просто застрял сегодня на стене путаницы, и я надеюсь кто-то сможет помочь :)PHP Оператор IF Проблема с Исетью &! Пустым
У меня есть база данных, полные основных проектов, а также в эта таблица имеет такие атрибуты, как название проекта, номер проекта, изображение проекта и т. д. Я могу вводить новые проекты/отображать существующие проекты/и т. д. без проблем.
Моя проблема, кажется, возникает, когда я хочу редактировать проект. Мои мысли состояли в том, что мне пришлось бы создать инструкцию IF, чтобы узнать, есть ли новый файл, загруженный или нет, и либо установить новое имя файла в базе данных, если оно есть, либо сохранить старый в базе данных, если нет ,
Я играю с этим в течение нескольких дней, и я думаю, что я начал слишком далеко впереди себя. Я начал разбиваться на основы, и я сбиваюсь с моим IF-заявлением, похоже, что он обратный? Имеет ли это смысл?
Примеров:
if (isset($_COOKIE["OldProjectImage1"])){$OldProjectImage1 = $_COOKIE["OldProjectImage1"];}
if(isset($OldProjectImage1)){
echo 'Your Browser Cookies are not enabled';
} else if(isset($_FILES['ProjectImage1']['name'])){
echo 'Image1 FILES isset';
} else if(!empty($_FILES['ProjectImage1']['name'])){
echo 'Image1 FILES empty';
}
Сейчас в поиске StackExchange я обнаружил, что мы должны сделать заявление на COOKIE частях вместо переменного, как я сделал выше, но и так же не удается.
if (isset($_COOKIE["OldProjectImage1"])){$OldProjectImage1 = $_COOKIE["OldProjectImage1"];}
if(!empty($_COOKIE['OldProjectImage1'])){
echo 'Your Browser Cookies are not enabled';
} else if(isset($_FILES['ProjectImage1']['name'])){
echo 'Image1 FILES isset';
} else if(!empty($_FILES['ProjectImage1']['name'])){
echo 'Image1 FILES empty';
}
И я также попытался с IsSet
if (isset($_COOKIE["OldProjectImage1"])){$OldProjectImage1 = $_COOKIE["OldProjectImage1"];}
if(isset($_COOKIE['OldProjectImage1'])){
echo 'Your Browser Cookies are not enabled';
} else if(isset($_FILES['ProjectImage1']['name'])){
echo 'Image1 FILES isset';
} else if(!empty($_FILES['ProjectImage1']['name'])){
echo 'Image1 FILES empty';
}
Я попытался как с моим сценарием, и они оба ведут себя аналогичным образом. Возможно, я просто запутался в общем процессе?
Когда я запускаю свои тесты с включенными и без файлов cookie, всегда кажется, что пропустить первую часть инструкции IF (как с isset, так и с пустым) и перейти к следующему разделу. Затем аналогичным образом кажется, что оператор IF обратный (если это имеет смысл) - если я установил файл для загрузки, который заполняет ProjectImage1, я получаю «Image1 FILES empty». Если я не установил файл для загрузки и отправки формы, я получаю «Image1 FILES isset».
Я думал, что это по сути будет, на простом английском языке,
If cookie is empty then echo "Your Browser Cookies are not enabled"
Else if ProjectImage1 Name is set, echo "Image1 FILES isset"
Else if ProjectImage1 Name is Empty, echo "Image1 FILES empty"
но это чувство для меня, как это назад? Я понимаю это неправильно?
Спасибо в продвинутом виде для любых ответов!
Вы должны установить куки, прежде чем вы можете прочитать его. Но файл cookie не связан с базой данных, но не связан с загрузкой файлов. На самом деле, я не понимаю, что вы пытаетесь сделать. – GolezTrol
Попробуйте «' 'прочь от' if (! Empty ('.' Empty() 'вернет true, если переменная существует, но пуста. На данный момент запись'! Empty' вернет 'true' (и поэтому передайте условие if), если переменная содержит что-то. –
Каков результат var_dump ($ _ COOKIE ["OldProjectImage1"]) – danbahrami