На данный момент я пытаюсь создать очень простой код проверки файлов, который требует, чтобы два входа были проверены как файлы:
<?php
if (file_exists($_POST['input1'] . '.html')) &&(file_exists($_POST['input2'] . '.txt')) {
header("Location: http://www.example.com/exists");
} else {
header("Location: http://www.example.com/noexist);
}
?>Код должен искать в папке два файла с именами, которые были введены как 'input1' и 'input2' (1 - это файл html, а 2 - текстовый файл), но он возвращает пустой экран.
Привет, вы должны указать полный путь к файлу в file_exists() для проверки. если вы передаете только имя файла, это не сработает.
@LuckySaini Ты в этом уверен? Я бы подумал, что он проверит тот же путь, по которому находится вызывающий скрипт, если вы только дадите ему имя файла






В вашем коде есть ошибка, в которой отсутствует " в другом состоянии, и вы должны использовать полный путь к вашему файлу вместо имени файла.
Все проблемы исправлены
$path= '/your_file_path/';
if (file_exists($path.$_POST['input1'] . '.html') && file_exists($path.$_POST['input2'] . '.txt'))
{
header("Location: http://www.example.com/exists");
}
else
{
header("Location: http://www.example.com/noexist");
}
лучший способ использовать это
$path1='/your_file_path/'.$_POST['input1'] . '.html';
$path2='/your_file_path/'.$_POST['input2'] . '.txt';
if (file_exists($path1) && file_exists($path2))
еще несколько деталей для использования абсолютного пути
$file_name=$_POST['input1'] . '.html';
$path= dirname(__FILE__) . DIRECTORY_SEPARATOR . "{$file_name}";
Дополнительная информация об абсолютном и относительном пути
Ссылка ИЛИ более подробная информация об абсолютном и относительном пути
Подробнее о функции Файл существует()
"вы должны использовать полный путь к вашему файлу вместо имени файла" Если я что-то совсем не упустил, это неправда. if ( file_exists('.345345.ico') ) { echo "exists"; } работает должным образом и выводит «существует», если файл с именем .345345.ico находится в той же папке, что и сценарий, в котором находится этот код.
@kerbholz некоторое время конфликтовал относительный путь в функции php, тогда мы использовали абсолютный путь.
Хорошо, "некоторые временные конфликты относительных путей в функции php" Никогда не было проблем с относительными путями (если только относительные пути не были неправильными, что не является ошибкой file_exists()s). Комментарий LuckySainis и ваш "вы должны использовать полный путь к вашему файлу вместо имени файла" звучат так, как будто это причина, по которой код OPs не работает, а использование только имени файла в file_exists() не допускается. Ничего
Опечатка в конце второго заголовка. Написать
"