• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Mick3y_16

Website Status

31 mensagens neste tópico

Ola gostava de saber se existe alguma maneira de usando php verificar se um site esta up ou down e consoante a resposta que obtiver mostrar uma imagem diferente! Se for podem-m mostrar como? Obrigado!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É só utilizar fsockopen("$site"); .....  Se conectar ao site é porque o site esta Up e se não conectar é porque esta Down... Não posso mostrar o código completo porque estou muito ocupado esses dias... mais info em: http://www.php.net/fsockopen

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pa, podes tentar uma cena assim:


<?php
$fp = fsockopen("www.sapo.pt", 80, $errno, $errstr, 3);
if (!$fp) {
echo "<img src='a_tua_imagem'>";//imagem de kuando ta down
} else {
echo "<img src='a_outra_img'>";//imagem de kuando ta up
}
?> 

codigo testado e funcional...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

andaste a entrar no meu pc karva :)?eu aqui a uns tempos fiz um igualzinho a esse, a única coisa difrente era os exemplos de imagens e o site, há e claro o coded by skin, que eu ponho sempre.

Funciona :D!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

looooooooooooooooooooooooooooooool

pa, este foi memo um dos meus scripts funcionais ke deram à primeira loool

foi so mm ver a funcao e adaptar... :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

quer dizer eu tou a testar e não ta a dar. TA tudo em branco. Mas quando eu o fiz dava :S! Tenho d ver outra vez o que falta. O teu tb n ta a dar :)!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

eu esrimentei isso para um servidor de MMORPG e apareceu:

Warning: fsockopen(): unable to connect to server.zapto.org:4000 in /home/vaurdan/public_html/mmorpg/server.php on line 2

Alguem me ajuda???

EDIT: ja sei o problema e acho que a soluçao é pingar mas como???

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pa, ker dizer ke nao konsegues ligar ao server...

pode haver alguma desconfiguracao, pk ele a mim dame...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o fsockopem acho que é so para apginas web como podes notar a minha porta é 4000 e nao 80... eu queria que ele fize-se um ping ao server e se responde-se dizia que tava on caso contrario off

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu sei qual é o vosso erro...

ISTO ESTA ERRADO:

fsockopen("http://www.google.com", 80, $errno, $errstr, 30);

ISTO ESTA CERTO:

fsockopen("www.google.com", 80, $errno, $errstr, 30);

os sites não podem começar com http://

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sois uns amores :) vou testar e dpois digo kk coisa xD thx

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu sei qual é o vosso erro...

ISTO ESTA ERRADO:

fsockopen("http://www.google.com", 80, $errno, $errstr, 30);

ISTO ESTA CERTO:

fsockopen("www.google.com", 80, $errno, $errstr, 30);

os sites não podem começar com http://

eu n cometo esse ero pk o meu server nem é http... ele é um server de um jogo e eu queria que algo o pinga-se se alguem sobe-se

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mas se reparares, no meu o site nao comeca por http://, e so memo o site...

E funcionou ou não ? :D

Eu sei qual é o vosso erro...

ISTO ESTA ERRADO:

fsockopen("http://www.google.com", 80, $errno, $errstr, 30);

ISTO ESTA CERTO:

fsockopen("www.google.com", 80, $errno, $errstr, 30);

os sites não podem começar com http://

eu n cometo esse ero pk o meu server nem é http... ele é um server de um jogo e eu queria que algo o pinga-se se alguem sobe-se

Essa erro não era para ti :):D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

<
echo exec('ping server.zapto.org:4000');
?>

Have phun :) O resto é modificar... vez a mensagem de erro crias um if e depois fazes um else que supostamente seria se o server estiver online...

Não sei se funciona visto que a maior parte dos alojamentos desactiva a função exec :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso do ping não funciona lá muito bem, eu tenho um servidor e devidos a algumas brincadeiras possiveis tenho a firewall a filtrar os ping's ... :)

Abraço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

mas se reparares, no meu o site nao comeca por http://, e so memo o site...

E funcionou ou não ? :)

ya, assim funciona, ta td as 1000 maravilhas---

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Lol então tinhamos ai um problema de comunicação :) Não queriam algo como Ping ? :D

Bem para alguém interessado andei a brincar e criei isto:

<
$host = "www.google.pt";
$online = exec('ping -n 1 '.$host);

$erro = "Ping request could not find host ".$host.". Please check the name and try again.";
if ($online == $erro) { echo "Servidor Offline"; }
else { echo "Servidor Online"; }
?>

PS: A tag de iniciação está < porque pelos vistos dá erro se tiver completa :D Quando forem experimentar não se esqueçam disso :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

vardan, eu tentei pingar para esse servidor e não consegui por isso é do server, não do script :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Lol então tinhamos ai um problema de comunicação :) Não queriam algo como Ping ? :D

Bem para alguém interessado andei a brincar e criei isto:

<
$host = "www.google.pt";
$online = exec('ping -n 1 '.$host);

$erro = "Ping request could not find host ".$host.". Please check the name and try again.";
if ($online == $erro) { echo "Servidor Offline"; }
else { echo "Servidor Online"; }
?>

PS: A tag de iniciação está < porque pelos vistos dá erro se tiver completa :D Quando forem experimentar não se esqueçam disso :D

Isso não funciona :D  Eu coloquei  $host = "aksjhasisds.pt"; e aquilo diz Servidor Online  o_O

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ele diz servidor online smp, porque so diz ke ta offline kuando o comando ping da essa resposta exacta.

este string so funciona ao usares o codigo no windows, e km o win em ingles.

pra o win em pt, ficaria assim:

<?
$host = "www.google.pt";
$online = exec('ping -n 1 '.$host);

$erro = "Pedido de ping não localizado no anfitrião ".$host.". Verifique o nome e tente de novo.";
if ($online == $erro) { echo "Servidor Offline"; }
else { echo "Servidor Online"; }
?>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Claro eu fiz isso para funcionar para mim :) Cada um adapta como tem de adaptar :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora