Jump to content
Jamal xtz

Acessar url

Recommended Posts

O link esta abrindo corretamente, estou utilizando arduino e ele liga uma lampada aqui em casa, queria saber se tem algum comando que acione esse link toda vez que eu entrar em uma página, eu utilizei o fopen mas só funciona no servidor local, no servidor onde eu hospedo ele nao funciona.

Share this post


Link to post
Share on other sites

Para usar arquivo remoto (http por exemplo) na função fopen, você tem que habilitar a diretiva de configuração allow_url_fopen ( http://php.net/manual/pt_BR/filesystem.configuration.php#ini.allow-url-fopen ).

 

Mas você também pode usar a função file_get_contents:

 

 

<?php
$teste = file_get_contents("http://casacomarduino.dlinkddns.com:1600/?acao=101");

Share this post


Link to post
Share on other sites
<?php


function testeOnclick() {


$hostname = ""; // Host // endereço

$username = ''; // Usuario

$password = ''; // Senah

$database = ''; //Nome do bd


$tipo ;

$horario ;

$tempo ;



try {

$pdo = new PDO("mysql:host=$hostname;dbname=$database", $username, $password,

array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));

echo 'Conexao efetuada com sucesso!';

}

catch(PDOException $e)

{

echo $e->getMessage();

echo 'erro na conexao!';

}

// executa a instrução SQL

$consulta = $pdo->query("SELECT tipo, horario, tempo, cont FROM horta");


//executa um comando while para salvar as variaveis

while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)) {

$tipo = $linha['tipo'];

$horarioIniciar = $linha['horario'];

$tempo = $linha['tempo'];

$cont = $linha['cont'];

}


date_default_timezone_set('America/Sao_Paulo'); // Pega a data atual do brasil

$data_sistema = date('H:i'); // Formata a data para minutos e segundos



// Defino a hora com a qual vou trabalhar

$hora = $horarioIniciar;

// Somo 5 minutos (resultado em int)

$horaNova = strtotime("$hora + $tempo minutes");

// Formato o resultado

$horarioTerminar = date("H:i",$horaNova); // O 'h' maisculo seta a data no formato 12hs e o h minisculo bo formato 24hs

// Mostro na tela


echo "Horario inicial = '$horarioIniciar' - Horario terminar = '$horarioTerminar' - Durante = '$tempo' - Hora Atual = '$data_sistema'";


if($data_sistema > $horarioIniciar && $tipo == 'agendamento' && $cont == 0 && $data_sistema < $horarioTerminar){

$sql = "INSERT INTO `horta_log`(data, log) VALUES ( NOW() + INTERVAL 45 MINUTE, 'Irrigação acionada por agendamento!')";

$exec = $pdo->exec($sql);


$sql = "UPDATE `horta` SET cont = '1' WHERE 1";

$exec = $pdo->exec($sql);




}else{


}


if($horarioTerminar < $data_sistema && $tipo == 'agendamento' && $cont == 1){

$sql = "INSERT INTO `horta_log`(data, log) VALUES ( NOW() + INTERVAL 45 MINUTE, 'Irrigação desligada por agendamento!')";

$exec = $pdo->exec($sql);


$sql = "UPDATE `horta` SET cont = '0' WHERE 1";

$exec = $pdo->exec($sql);





}else{


}



}


testeOnclick();

?>

Share this post


Link to post
Share on other sites

Estava utilizando em um cron job, do nada parou de funcionar, ja mandeu uma msg pra eles, disseram que é problema na programação, mas o código estava funcionando, nao tenho ideia pq parou de funcionar

Share this post


Link to post
Share on other sites

Hum muito estranho... não vejo nada nesse código que possa causar problema...

 

Depois de acessar a página, quanto tempo +- levou para aparecer o erro de timeout com o file_get_contents? E com o fopen aparece algum erro?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.