Davide Ricardo 0 Denunciar post Postado Novembro 24, 2009 Já insere pessoal. <?php $server = '192.168.0.3'; $username = 'admin'; $password = ''; $methods = array( 'kex' => 'diffie-hellman-group1-sha1' ); $connection = ssh2_connect($server, 22, $methods); ssh2_auth_password($connection, $username, $password); $shell = ssh2_shell($connection); $comando = '/ip hotspot user add name=zaza password=zaza'; $stream = ssh2_exec($connection, $comando); Só falta o resto.. lol :P Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 24, 2009 Pessoal, já consigo listar, mas a listagem sai-me da seguinte maneira Flags: X - disabled, D - dynamic # SERVER NAME ADDRESS PROFILE UPTIME 0 admin default 0s 1 user1 default 0s Será possivel eu só listar o id e o name? Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Novembro 25, 2009 se o objeto não tiver algo específico para isso, utilize funções de string do proprio php. Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 25, 2009 Desculpe mas não percebi. Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 25, 2009 ja consigo sacar o id, atraves da função explode.. queria era tirar as duas primeiras linhas.. acho que é possível. while($linha = fgets($stderr_stream)) { flush(); $texto[$i] = $linha; $i++; Assim consigo obter a linha e eliminar as duas primeiras? Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Novembro 26, 2009 utilize função explode() + PHP_EOL $rs = explode( PHP_EOL, $str ); // $rs se tornará um vetor, cujos valores são cada uma das linhas. Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 26, 2009 Boas, É assim não estou a conseguir obter resultados. O que eu quero é mediante o seguinte resultado, excluir as duas primeiras linhas, e chamar nas restantes somente o valor do ID e do Name Flags: X - disabled, D - dynamic # SERVER NAME ADDRESS PROFILE UPTIME 0 admin default 0s 1 user1 default 0s codigo $stdout_stream = ssh2_exec($connection, "/ip hotspot user print"); sleep(1); $stderr_stream = ssh2_fetch_stream($stdout_stream, SSH2_STREAM_STDERR); echo "<table cellspacing='2' cellpadding='2' border='1' align='center'>"; while($line = fgets($stderr_stream)) { flush(); $linha = explode(PHP_EOL, $line ); } while($line = fgets($stdout_stream)) { flush(); $linha = explode(PHP_EOL, $line); echo "<tr><td>".$linha[0]."</td>"; echo "<td>".$linha[1]."</td>"; echo "<td><a href='?pagina=utilizadores-apaga.php&id=".$linha[0]."'><img src='imagens/del.png' border='0'></a></td></tr>"; } echo "</table>"; Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 26, 2009 Se não houver solução por aqui, se calhar se na listagem gravássemos para um ficheiro, depois já se conseguia fazer a leitura. não? PS: estou assim um pouco preocupado, porque amanhã de manhã tenho que ter este trabalho feito. e só me falta isto. Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Novembro 26, 2009 $stdout_stream = ssh2_exec($connection, "/ip hotspot user print"); sleep(1); $stderr_stream = ssh2_fetch_stream($stdout_stream, SSH2_STREAM_STDERR); echo "<table cellspacing='2' cellpadding='2' border='1' align='center'>"; $c = 1; while($line = fgets($stdout_stream)) { flush(); if( $c > 2 ){ $linha = explode(' ', $line); echo "<tr><td>".$linha[0]."</td>"; echo "<td>".$linha[1]."</td>"; echo "<td><a href='?pagina=utilizadores-apaga.php&id=".$linha[0]."'><img src='imagens/del.png' border='0'></a></td></tr>"; } $c++ } echo "</table>"; Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 26, 2009 dá o seguinte erro Notice: Undefined offset: 1 in C:\Apache\htdocs\utilizadores.php on line 47 linha 47 echo "<td>".$linha[1]."</td>"; De qualquer das formas, já não lista as duas primeiras linhas. Lista o ID do utilizador, mas não lista o nome. Obrigado pela disponibilidade Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Novembro 26, 2009 está quase lá.. faça um debug e veja o que está havendo.. exemplo de debug print_r( $linha ); exit; echo "<tr><td>".$linha[0]."</td>"; Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 26, 2009 ja consegui echo "<td>".@$linha[1]."</td>"; Ja lista tambem o Name Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 26, 2009 Preciso é de saber o comando para fechar a ligação por ssh. Compartilhar este post Link para o post Compartilhar em outros sites
Davide Ricardo 0 Denunciar post Postado Novembro 26, 2009 no putty o comando quit termina a sessão. Será do género? ssh2_exec($connection, "quit"); Compartilhar este post Link para o post Compartilhar em outros sites