如果FTP服务器无效,如何获取错误。

时间:2012-05-16 13:45:12

标签: php ftp remote-access ftp-server

我正在尝试连接FTP服务器使用php代码, 如果我把FTP-Servaer名称无效,那么它结束脚本并且不会在$ conn_id中返回false。

code spinet:

$conn_id = ftp_connect($_POST['ftp_server']);
if($conn_id)
{
   echo "invalid server name";
}
else
{
   if(ftp_login($conn_id, $_POST['ftp_username'], $_POST['ftp_password']))
   {
    $connection_status = 'tested';
    echo "<script>alert('Correct FTP login credentials');</script>";
   }
}

在第一行停止脚本,不显示echo“无效的服务器名称”;

错误

ftp_connect()[function.ftp-connect]:php_network_getaddresses:getaddrinfo failed:没有这样的主机。

我需要提醒用户是否输入了无效的服务器名称。谢谢!!!

2 个答案:

答案 0 :(得分:2)

试试这个,你完成了

$conn = @ftp_connect("ftp.funnybunnyvideos.in");
if($conn)
{
    echo 'server name is valid';
}
else
{
    echo 'server name is invalid';
}

干杯!!!

答案 1 :(得分:1)

我认为您应该只需将if($conn_id)更改为if($conn_id === FALSE)

修改

尝试运行:

<?php
$c = ftp_connect('ftp.mozilla.org');
var_dump($c);

$c = ftp_connect('abcdefg');
var_dump($c);
?>

你应该得到这个:

  

类型的资源(2)(FTP缓冲区)警告:ftp_connect()

     

[function.ftp-connect]:php_network_getaddresses:getaddrinfo失败:   没有这样的主人是已知的。在第5行的C:\ abc \ def.php

     

布尔(假)