私は簡単な質問があります! :-D 私はPhp
の新品です。code
と書いてありますので、SSH
でデバイスに接続できます。 しかし、これをクラスとメソッドで試してみると、うまくいきません。PHPクラスのメソッドを呼び出せません
<?php
class Connection {
public $ip;
public $usernam;
public $password;
public $ssh;
public function sshConnection() {
include ('./view/login.html');
include('Net/SSH2.php'); // I use phpseclib to connect via SSH
if(isset($_POST['login'])) { // Login button in html file
$this->ip = $_POST['ip']; // input type to get ip in html file
$this->usernam = $_POST['username']; // input type to get username in html file
$this->password = $_POST['password']; // input type to get password in html file
$this->ssh = new Net_SSH2($ip);
if (!$ssh->login($username, $password)) {
print('Login faild');
} else {
echo $ssh->exec('pwd');
}
}
}
}
$connection=new Connection();
$connection->sshConnection();
html
ファイルログイン: は、ここでも私のクラスを含み、メインのPHP私のコードです。私が含まれているhtml
は、いくつかの内部のCSS
を持つログインページのビューです。 あなたは私は、このコードによってクラスを作成している見ての通り:
$connection=new Connection();
$connection->sshConnection();
私はそれが正常に動作するクラスを作成せずにこのコードを使用すると! 私はクラスを定義するので、私はログインボタンを押しても何も起こらず、何も起こらない。
ここで私は間違っていますか? 助けていただければ幸いです。 :-)
は、なぜあなたは 'の場合(ISSET($ _ POST [ 'ログイン'])){'内部クラス/関数を使用していますか? クラス外でも使用していますか? – Echoes
クラス外にインクルードステートメントを置くことができます。 – zenwraight
@Echoes:いいえ、クラス外では使用しません。 クラスのすぐ内側です。 –