Webadmin como salvar no arquivo de configurações  TOPIC_SOLVED

Topics Programming. Not necessarily about the BrazilFW!

Webadmin como salvar no arquivo de configurações  TOPIC_SOLVED

Mensagempor delcio » Dom Jul 27, 2014 3:18 pm

Olá, estou desenvolvendo um addon para monitorar o ping dos links, no estilo do RRD_STATS, o addon já está funcionando,
mas não estou com problema na pagina de configuração, que não grava os dados no arquivo de configuração.
segue o código php
Código: Selecionar todos
<?php

include_once("../../framework/framework.php");

$alias=alias("internet");
array_unshift($alias,"all");
$aliasdisp=preg_replace("/^all$/",$BFWLNG["BFW0158"],$alias);


$html = new html();
$win = new window_service_config();
$win->caption="Configuracoes do Link-Monitor";
$win->icon="../icons/statitics.png";
$win->width=600;
$win->files("/etc/brazilfw/link-monitor/link-monitor.cfg");
$win->command="/etc/init.d/013-link-monitor";
$win->running="pidof link-monitor";
$win->actions(false,true,true,true,true);
$active=$LINK_MONITOR;
$win->label("Ativo",yesno("LQM_ENABLED", $LQM_ENABLED),"Ativa ou Desativa o Link-Monitor");
$win->label("Conexao",combobox("INTERFACE_INTERNET",120,$alias,$aliasdisp,$INTERFACE_INTERNET),"Conexao a ser Monitorada");
$win->label("Num. Pings",text("NUM_PINGS",60,$NUM_PINGS,5,true),"Numero de pings por teste(1-10)");
$win->label("Tamanho Ping",text("TAMANHO_PING",60,$TAMANHO_PING,5,true),"Tamanho do ping em bytes(4-100)");
$win->label("Intervalo",text("INTERVALO_ATUALIZACAO",60,$INTERVALO_ATUALIZACAO,5,true),"Intervalo entre testes(10-60)");
$win->label("Ip Destino",text("IP_PING",160,$IP_PING,15,true),"Ip de Destino(Gateway da internet)");

$html->initialize();
   $win->show();
$html->finalize();
?>


Php não é o meu forte, algém podia me dar uma luz?
delcio
 

Re: Webadmin como salvar no arquivo de configurações

Mensagempor delcio » Dom Jul 27, 2014 3:28 pm

Vejam como está ficando, assim que terminar compartilharei.

Imagem
delcio
 

Re: Webadmin como salvar no arquivo de configurações

Mensagempor Lenobare » Seg Jul 28, 2014 9:50 pm

Amigo, interessante heim... eu achei :o!

Não saco de php senão resolveria essa parada pra você, especialmente porque vai postar como teste inicial em um addon, pois isto é riqueza para nosso bfw.

Vamos lá pessoal quem pode ajudar nosso amigo delcio... acedito que não seja um bicho de sete cabeças :mrgreen:
Estude, estude e... continue estudando.
Avatar do usuário
Lenobare
BFW Full Associate
BFW Beneméritos
BFW Manager
BFW Moderator
BFW HaarpCache
BFW Squid 3.5.x
 
Mensagens: 1682
Registrado em: Qua Ago 28, 2013 8:45 pm
Localização: Brasília
BrazilFW Box: Maquina: Fisica
CPU:Xeon HP ML30
Memória 8GB - 2Links
BFW 3.0.262 64 Bits
HD 300GB 15k,
Serviços Ativos: Control Mac, VPN, Squid (Cache),
Addons: Haro, Whatchdog. Squid 3.5.27, Lognet e Samba.

Re: Webadmin como salvar no arquivo de configurações

Mensagempor apoliano » Seg Jul 28, 2014 10:44 pm

Boa noite!

Entendo um pouco de PHP, inclusive to estudando o franework do BFW.
Mande os fontes do seu projeto, vou ver se consigo ajudar em algo. :o!
Apoliano Sousa "técnico em Informática" aprendendo linux...
A cada dia meu conhecimento aumenta um pouco mais.
Avatar do usuário
apoliano
BFW Experienced
 
Mensagens: 798
Registrado em: Ter Dez 13, 2011 4:40 pm
Localização: Ubajara-CE
BrazilFW Box: Intel(R) Celeron(R) CPU 420 @ (1x) 1.608 GHz
946.96 MB DDR2 HD 80 Gb SATA
BFW 3.0.260 32 bits - squid - mac x ip - Mysql - phpmyadmin

Re: Webadmin como salvar no arquivo de configurações

Mensagempor brunovescovi » Ter Jul 29, 2014 6:51 am

Bom dia, pessoal.

Na linha abaixo de configuração:
Código: Selecionar todos
$win->files("/etc/brazilfw/link-monitor/link-monitor.cfg");

Verifique se existe a pasta /etc/brazilfw/link-monitor. Se quiser fazer um teste rápido, altere para gravar na pasta raíz das configurações para ver se esse é o problema:
Código: Selecionar todos
$win->files("/etc/brazilfw/link-monitor.cfg");


Um abraço.
Contribua para que o Projeto BFW permaneça no ar, Doe Click aqui
Contribua com o Bruno Vescovi, Doe Click aqui (pagseguro) ou Click aqui (paypal)
------------------------------------------------------------------------------------------------------------------------------
"Amor não é um sentimento. Amor é uma decisão de fazer o melhor possível para Deus e para o seu próximo."
Avatar do usuário
brunovescovi
BFW Moderator
BFW Add-on Developer
BFW Beneméritos
BFW Manager
BFW Documenter
BFW Expert
 
Mensagens: 3650
Registrado em: Ter Jun 29, 2010 7:27 pm
Localização: Guarapari - ES
BrazilFW Box: Não usando o BFW no momento

Re: Webadmin como salvar no arquivo de configurações

Mensagempor delcio » Ter Jul 29, 2014 11:35 am

apoliano escreveu:Boa noite!

Entendo um pouco de PHP, inclusive to estudando o franework do BFW.
Mande os fontes do seu projeto, vou ver se consigo ajudar em algo. :o!

Olá apoliano, basicamente a parte que salva a configuração é essa que postei acima, estou usando o framework do brazilfw,
mas não entendi direito o funcionamento da parte que salva as configurações, imagino que esteja faltando algo
no meu arquivo para gravar no arquivo de configurações.
Se pudesse me fazer um exemplo de um php que gravasse as configurações no .cfg me ajudaria muito.

brunovescovi escreveu:Verifique se existe a pasta /etc/brazilfw/link-monitor. Se quiser fazer um teste rápido, altere para gravar na pasta raíz das configurações para ver se esse é o problema:

Ola brunovescovi, boa ideia, tentei colocar em /etc/brazilfw/link-monitor.cfg mas não gravou mesmo assim,
já havia verificado a pasta e as permissões, mas sem sucesso.

Fico grato aos amigos, mas ainda buscando uma solução.
delcio
 

Re: Webadmin como salvar no arquivo de configurações

Mensagempor apoliano » Ter Jul 29, 2014 4:33 pm

Desde de o meio dia que eu to tentando fazer fazer/modificar um arquivo de configuração e, ainda
não consegui, já criei outro script do zero e nada.
Apoliano Sousa "técnico em Informática" aprendendo linux...
A cada dia meu conhecimento aumenta um pouco mais.
Avatar do usuário
apoliano
BFW Experienced
 
Mensagens: 798
Registrado em: Ter Dez 13, 2011 4:40 pm
Localização: Ubajara-CE
BrazilFW Box: Intel(R) Celeron(R) CPU 420 @ (1x) 1.608 GHz
946.96 MB DDR2 HD 80 Gb SATA
BFW 3.0.260 32 bits - squid - mac x ip - Mysql - phpmyadmin

Re: Webadmin como salvar no arquivo de configurações

Mensagempor delcio » Qua Jul 30, 2014 11:12 pm

apoliano escreveu:Desde de o meio dia que eu to tentando fazer fazer/modificar um arquivo de configuração e, ainda
não consegui, já criei outro script do zero e nada.


Fiz algum progresso, mas tô cada vez mais confuso.

apoliano, teste os dois scrips abaixo:
Código: Selecionar todos
<?php

include_once("../../framework/framework.php");
$html = new html();
$win = new window_service_config();
$win->caption="SqStat Settings";
$win->icon="../icons/servicemanager.png";
$win->files("/etc/brazilfw/sqstat.cfg");
$win->width=650;
$win->actions(false,false,false,false,false);
$win->label("Resolve user",combobox("SQSTAT_RESOLIP",120,array('1','0'),array("Yes","No"),"$SQSTAT_RESOLIP",true),"Resolve user IP addresses or print them as numbers only [true|false]");
$win->label("Group users by hostname",combobox("SQSTAT_GROUP",120,array("host","username"),array("Host","User Name"),"$SQSTAT_GROUP","sel_type(this.value);",true),"Group users by hostname - 'host'. or by User - 'username'. Username work only with squid 2.6+ ");
$win->label("Squid Port",text("SQSTAT_PORT",120,$SQSTAT_PORT),"Squid proxy server port '3128'");
$win->label("Squid Host",text("SQSTAT_HOST",120,$SQSTAT_HOST),"IP ou nome do servidor que tem o proxy squid '127.0.0.1'");
$win->label("Password cachemgr",password("SQSTAT_PASSWD",120,$SQSTAT_PASSWD),"cachemgr_passwd in squid.conf. Leave blank to disable authorisation");
$html->initialize();
$win->show();
$html->finalize();
?>



e
Código: Selecionar todos
<?php

include_once("../../framework/framework.php");
$html = new html();
$win = new window_service_config();
$win->caption="SqStat Settings";
$win->icon="../icons/servicemanager.png";
$win->files("/etc/brazilfw/sqstap.cfg");
$win->width=650;
$win->actions(false,false,false,false,false);
$win->label("Resolve user",combobox("SQSTAT_RESOLIP",120,array('1','0'),array("Yes","No"),"$SQSTAT_RESOLIP",true),"Resolve user IP addresses or print them as numbers only [true|false]");
$win->label("Group users by hostname",combobox("SQSTAT_GROUP",120,array("host","username"),array("Host","User Name"),"$SQSTAT_GROUP","sel_type(this.value);",true),"Group users by hostname - 'host'. or by User - 'username'. Username work only with squid 2.6+ ");
$win->label("Squid Port",text("SQSTAT_PORT",120,$SQSTAT_PORT),"Squid proxy server port '3128'");
$win->label("Squid Host",text("SQSTAT_HOST",120,$SQSTAT_HOST),"IP ou nome do servidor que tem o proxy squid '127.0.0.1'");
$win->label("Password cachemgr",password("SQSTAT_PASSWD",120,$SQSTAT_PASSWD),"cachemgr_passwd in squid.conf. Leave blank to disable authorisation");
$html->initialize();
$win->show();
$html->finalize();
?>


Vai ver que o primeiro salva, inclusive cria o arquivo se ele não existir, e o segundo não salva.
A única diferença entre os dois é uma letra do nome do arquivo de configuração.
delcio
 

Re: Webadmin como salvar no arquivo de configurações

Mensagempor apoliano » Qui Jul 31, 2014 12:06 am

Certo, vou testar.

Tava fazendo outros teste agora
Veja o script, esse é o qual você criou fiz algumas mudanças nele.
Ele não salva o arquivo de configuração
Código: Selecionar todos
<?php
include_once("/var/htdocs/framework/framework.php");
$alias=alias("internet");
array_unshift($alias,"all");
$aliasdisp=preg_replace("/^all$/",$BFWLNG["BFW0158"],$alias);
if ($_POST) { $_POST["USE_MONITOR"]=$_POST["active"]; }

$html = new html();
$win = new window_service_config();
$win->caption="Monitor";
$win->icon="../icons/servicemanager.png";
$win->width=630;
$win->files("/etc/brazilfw/monitor/config.cfg");
$win->command="/etc/init.d/013-link-monitor";
$win->running="pidof link-monitor";
$win->actions(true,true,true,true,false);
$active=$USE_MONITOR;
$win->label("Conexao",combobox("INTERFACE_INTERNET",120,$alias,$aliasdisp,$INTERFACE_INTERNET),"Conexao a ser Monitorada");
$win->label("Num. Pings",text("NUM_PINGS",60,$NUM_PINGS,5,true),"Numero de pings por teste(1-10)");
$win->label("Tamanho Ping",text("TAMANHO_PING",60,$TAMANHO_PING,5,true),"Tamanho do ping em bytes(4-100)");
$win->label("Intervalo",text("INTERVALO_ATUALIZACAO",60,$INTERVALO_ATUALIZACAO,5,true),"Intervalo entre testes(10-60)");
$win->label("Ip Destino",text("IP_PING",160,$IP_PING,15,true),"Ip de Destino(Gateway da internet)");
$html->initialize();
$win->show();
$html->finalize();
?>


Agora veja de novo o mesmo script, esse salva o arquivo de configuração.
Código: Selecionar todos
<?php
include_once("/var/htdocs/framework/framework.php");
$alias=alias("internet");
array_unshift($alias,"all");
$aliasdisp=preg_replace("/^all$/",$BFWLNG["BFW0158"],$alias);
if ($_POST) { $_POST["USE_MONITOR"]=$_POST["active"]; }

$html = new html();
$win = new window_service_config();
$win->caption="Monitor";
$win->icon="../icons/servicemanager.png";
$win->width=630;
$win->files("/etc/brazilfw/monitor/config.cfg");
$win->command="/etc/init.d/090-templock";
$win->running="[ -e '/var/run/templock.pid' ] && echo 1 || echo 0";
$win->actions(true,true,true,true,false);
$active=$USE_MONITOR;
$win->label("Conexao",combobox("INTERFACE_INTERNET",120,$alias,$aliasdisp,$INTERFACE_INTERNET),"Conexao a ser Monitorada");
$win->label("Num. Pings",text("NUM_PINGS",60,$NUM_PINGS,5,true),"Numero de pings por teste(1-10)");
$win->label("Tamanho Ping",text("TAMANHO_PING",60,$TAMANHO_PING,5,true),"Tamanho do ping em bytes(4-100)");
$win->label("Intervalo",text("INTERVALO_ATUALIZACAO",60,$INTERVALO_ATUALIZACAO,5,true),"Intervalo entre testes(10-60)");
$win->label("Ip Destino",text("IP_PING",160,$IP_PING,15,true),"Ip de Destino(Gateway da internet)");
$html->initialize();
$win->show();
$html->finalize();
?>

A diferença entre os dois são as linhas abaixo.
Código: Selecionar todos
$win->command="/etc/init.d/090-templock";
$win->running="[ -e '/var/run/templock.pid' ] && echo 1 || echo 0";

Essas são de um script de um addon instalado e funcionando, quando tiro essas linhas não salva
mais as modificação no arquivo de configuração.
Apoliano Sousa "técnico em Informática" aprendendo linux...
A cada dia meu conhecimento aumenta um pouco mais.
Avatar do usuário
apoliano
BFW Experienced
 
Mensagens: 798
Registrado em: Ter Dez 13, 2011 4:40 pm
Localização: Ubajara-CE
BrazilFW Box: Intel(R) Celeron(R) CPU 420 @ (1x) 1.608 GHz
946.96 MB DDR2 HD 80 Gb SATA
BFW 3.0.260 32 bits - squid - mac x ip - Mysql - phpmyadmin

Re: Webadmin como salvar no arquivo de configurações

Mensagempor apoliano » Qui Jul 31, 2014 12:21 am

Acabei de testar e, o primeiro salva as configuração no arquivo e, criar mesmo o arquivo se ele não existe.
Mudei o caminho do arquivo arquivo e funcionou beleza.
Mudei o nome do arquivo, ai nem precisa dizer mais nada. >| >| >|
Apoliano Sousa "técnico em Informática" aprendendo linux...
A cada dia meu conhecimento aumenta um pouco mais.
Avatar do usuário
apoliano
BFW Experienced
 
Mensagens: 798
Registrado em: Ter Dez 13, 2011 4:40 pm
Localização: Ubajara-CE
BrazilFW Box: Intel(R) Celeron(R) CPU 420 @ (1x) 1.608 GHz
946.96 MB DDR2 HD 80 Gb SATA
BFW 3.0.260 32 bits - squid - mac x ip - Mysql - phpmyadmin

Re: Webadmin como salvar no arquivo de configurações

Mensagempor delcio » Qui Jul 31, 2014 2:25 am

Acho que matei a charada:
As variáveis tem que começar com o nome do arquivo de configuração seguido de _,
para o arquivo lq.cfg as variáves tem que ser $LQ_ALGUMACOISA,
para o arquivo teste.cfg devem ser $TESTE_ALGUMACOISA

Consegui gravar perfeitamente com o script abaixo:
Código: Selecionar todos
<?php

include_once("../../framework/framework.php");
$html = new html();
$win = new window_service_config();
$win->caption="Teste de config";
$win->icon="../icons/servicemanager.png";
$win->files("/etc/brazilfw/lq.cfg");
$win->width=650;
$win->actions(false,false,false,false,false);
$win->label("Teste Porta",text("LQ_PORT",120,$LQ_PORT),"Teste de gravação'");
$html->initialize();
$win->show();
$html->finalize();
?>


Valeu a todos que ajudaram :o! .
Em especial ao apoliano pela troca de idéias.
Assim que possível terminarei o addon de monitoramento do link e postarei nos addons em para teste.
A coisa tá meio corrida aqui, mas espero terminar logo.
delcio
 


Voltar para Programming

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante