1
Привет У меня есть код, который подключается к моему FTP-серверPHP подключиться к FTP-серверу
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// check connection
if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user $ftp_user_name";
exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user_name";
//ftp_mkdir($conn_id, $dir);
$contents = ftp_nlist($conn_id, $dir);
//var_dump($contents);
echo "<select name=\"file\">\n";
// Now loop through the files, echoing out a new select option for each one
if (($contents != '.') && ($contents != '..'))
{
foreach($contents as $fname)
{
echo "<option>{$fname}</option>\n";
}
echo "</select>\n";
}
}
но страница все еще гулкой назад каталоги как. & .. несмотря на $ contents! = Бит; чего не хватает?
изменено на это ->
if (($fname != '.') && ($fname != '..'))
{
foreach($contents as $fname)
{
echo "<option>{$fname}</option>\n";
}
echo "</select>\n";
}
}
, но все еще такой же результат
Я не уверен, что вы имеете в виду, разве это не сравнивается с тем, как сейчас? –
Теперь вы сравниваете '$ contents' - который является массивом, поэтому он никогда не будет равен'. .'' или '' .. ''. Но вы хотите сравнить элементы этого массива, поэтому сравнение должно быть 'if ($ fname! = '.' && $ fname! = '..')' внутри цикла foreach. –
обновлен, но это стильно дает мне. & .. –