Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

hdnrf

Mostrando somente algumas imagens (loop)

Recommended Posts

Ola pessoal estou quebrando a cabeça aqui e nao sei como resolver..

 

Um cliente que dou suporte na sua rede tem um sistema (intranet) para monitorar o clima da sua estufa, esse sistema mostra varias imagens como temperatura, umidade, vento.... e por ai vai..

 

Ele quer que eu faça uma pagina para mostrar somente as imagens da temperatura da estufa, tipo um filtro das imagens.

 

Eu usei esse codigo:

 

pagina: index2.php

 

 

<?php$link = "/syscologic1000/estufa/index.php";$input = @file_get_contents($link) or die ('Erro!');$pegou = explode("<span class=\"share-img-temp\"", $input); //esta funcionando ok (pega a 1 foto)$pos1 = strpos($pegou[1],"src=\"");$pos1 += 5;$pos2 = strpos($pegou[1],"\"",$pos1) - $pos1;$imgTemp = "<img src=\"".substr($pegou[1],$pos1,$pos2)."\">";echo $imgTemp;?>

Ele abre o site procura a class "share-img-temp" e pega a foto dela e mostra na tela..

 

O problema é que, ele so pega a 1 imagem e nao continua verificando a pagina para mostrar as demais...

 

Ja tentei usar for e o while mas nao sei como fazer.

 

Alguem pode me dar uma luz ai..

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use DomDocument ou Expressões Regulares, com preg_match_all(), para fazer o parse do HTML

 

Tópicos semelhantes:

http://forum.imasters.com.br/topic/536345-script-de-monitoramento-de-pagina/

http://forum.imasters.com.br/topic/537991-pegar-conteudo-da-string-entre-tags/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola.

 

Vi os exemplos e vi que nao era a melhor saida, acabei encontrando um codigo que me parece melhor..

 

 

<?php
$xpath = new DOMXPath($doc);
$tmp = $xpath->query('//img[contains(@class,"share-img-temp")]');
foreach ($tmp as $value) {
    echo 'Foto:', $value->nodeValue, '<br>';
}
?>

 

O problema que ele nao esta puxxando a img, o que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu certo, troquei por isso:

 

<?php

 

$xpath = new DOMXPath($doc);
$tmp = $xpath->query('//img[contains(@class,"share-img-temp")]');
foreach ($tmp as $value) {
echo 'Imagem:<br><img src=', $value->getAttribute('src'), '><br>';
}

 

?>

 

Fonte: http://pt.stackoverflow.com/questions/72737/erro-ao-obter-conteudo-de-site-externo

 

Estava patinando, obrigado pelo "norte"..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acabei de descobrir um problema..

 

Como o sistema mostra muita imagem ele nao printa todas na tela de uma unica vez, ele vai mostrando conforme voce vai descendo a pagina, com isso, eu so pego 5 iniciais.

 

Como faço pra ele forçar a pagina carregar 100% e pegar todas as imagens?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.