Ir para conteúdo
Fórum Script Brasil
  • 0

Validar Url.... Como?


Guest Evandro Felipe

Pergunta

Guest Evandro Felipe

Caros amigos,

Gostaria que ao usuario digitar a url num campo text, a mesmo fosse validada via php. É possivel?

Foram-me enviados as seguintes sugestoes, mas nenhuma funcionou.

alguém já passou por isso? Poderia me ajudar?

<?

echo $url."<p>";

if($fp = fsockopen ($url, 21, $errno, $errstr, 10)){

echo "FTP server in online";

}else{

echo "FTP server is offline";

}

echo "<p>";

$fp = null;

//

$fp = fsockopen ($url, 80, $errno, $errstr, 30);

if (!$fp)

{echo "não acessou $errstr ($errno)<br>\n";}

else

{echo "Acessou!";}

//

echo "<p>";

$fp = fsockopen ($url, 80, $errno, $errstr, 30);

if (!$fp) {

echo "$errstr ($errno)<br/>\n";

}

//

echo "<p>";

$fp = fsockopen($url, 43, $errno, $errstr, 30);

if (!$fp)

{echo "$errstr ($errno)";}

?>

ocorreu o seguinte erro:

Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/classifi/public_html/detetive/valconect.php on line 3

Ou seja, toda vez que executava fsockopen() dava erro.

O que esta errado?

Responda a essa mensagem

Re: Validar url não func...

Autor: Newton Wagner

Data: 28-05-03 09:31

Pode ser que o seu servidor esteja configurado pra não rodar Sockets!! :(.

Tenta fazer assim ó:

<?

echo $url."<p>";

$ping = exec("ping ".$url);

if ($strpos($ping, "Pacotes")) {

echo "site encontrado";

} else {

echo "site não encontrado";

}

?>

Fico imensamente grato por qualquer ajuda.

Abracos,

Evandro Felipe.

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

Isso pode ser útil:

if (empty($url)) 
    { 
    $url="";
        echo "Escreva a URL";
    exit;
    } 

elseif (!empty($url))
    { 
    if (!strstr($url, "http://")) 
    { 
    echo "A URL: <font color=red><b>$url</b></font>, parce não ser valido.<br>";
    exit;
        }
    elseif (!strstr($url, ".")) 
    { 
    echo "A URL: <font color=red><b>$url</b></font>, parce não ser valido.<br>";
    exit;
        }
        }  

Fui.. ;)

Link para o comentário
Compartilhar em outros sites

  • 0

O negócio é mais ou menos assim...

Primeiro, fsockopen num seria a melhor funcção para validar URL, a melhor é checkdnsrr($dns);

Exemplo:

$dns = "terra.com.br";

if (checkdnsrr($dns)) echo "certo";

else echo "errado";

Segundo, não deve-se atribuir uma URL nem para o checkdnsrr nem o fsockopen, mas sim apenas o endereço do servidor, sem o http:// ou ftp://, e sem subdiretorios. Por exemplo:

http://terra.com.br -> false

www.terra.com.br -> acho que retorna true, mas não me lembro muito bem

terra.com.br -> true

terra.com.br/ -> false (tem trailing slash)

terra.com.br/dir -> false (não se pode por subdiretorios)

ESPERO TER AJUDADO!

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Evandro Felipe

Obrigado por responder.

Parece ser exatamente o que preciso muito.

Mas qual a versao do php. Pois no meu deu:

"

Warning: checkdnsrr() is not supported in this PHP build in C:\detetive\testaurl2.php on line 3

errado

"

Aguardo.

Evandro Felipe.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Evandro Felipe

Qual o retorno da funcao: strstr()?

não funcionou. Mesmo com sites que existem retornava sempre a mesma resposta do else.

Obrigado por responder.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, estranho não funcionar a função checkdnsrr ai, porque aqui funciona.

Provavelmente sua verão do php num tem a biblioteca que essa função usa.

OBS: checkdnsrr() é uma função feita especificamente para testar o endereço do site...

Eu uso o Apache 1.3.27 + MySQL 3.23.56 + PHP 4.3.1

E uso o Linux...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Evandro Felipe

:P Caro Eduardo,

Havia testa o funcionamento da funcao em meu computador sendo que é claro conectado à internet e realmente não tinha funcionado.

Lendo sua ultima mensagem fiz upload do arquivo para meu servidor e beleza funcionou perfeitamente.

Muito obrigado.

Se puder lhe ajudar em algo estou a disposicao.

Cordialmente,

Evandro Felipe.

Link para o comentário
Compartilhar em outros sites

  • 0

preciso de entrega um trabalho de URL no curso de informatica com urgencia na segunda feira

mande um E-mail para min tudo bem.

ribeirorei@bol.com.br

rrribeirorei@hotmail.com.br

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...