我正在尝试将表单变量作为主机名传递给phpseclib ssh。像这样:
<form action="test.php" method="post">
IP OR HOSTNAME: <input type="text" name="ipaddr">
<?php
$ipaddr = $_POST["ipaddr"];
$ssh = new ssh2('$ipaddr');
if (!$ssh->login('username', 'password')) {
exit('Login Failed');
}
echo $ssh->exec('command1');
echo $ssh->exec('command2');
?>
似乎没有效果。我错过了什么?
答案 0 :(得分:0)
如果你正在使用phpseclib,你应该这样做:
$ssh = new Net_SSH2($ipaddr);
而不是你在做什么:
$ssh = new ssh2('$ipaddr');
请注意它是Net_SSH2
而不是ssh2
。另请注意$ipaddr
如何不在单引号中。当使用单引号时,不会替换不必要的不承受变量的事实。