← PHP

Remover dinamicamente conteúdo de Iframe

Lida 2638 vezes

Offline

Ivo Pereira 
Membro
Mensagens 661 Gostos 1
Feedback +7

Troféus totais: 27
Trófeus: (Ver todos)
Linux User Super Combination Combination Topic Starter Level 5 Level 4 Level 3 Level 2 Level 1 500 Posts

Quase que aposto que isto é possível, mas não estou a ver bem como. Tenho uma Iframe e quero mostrar um conteúdo, mas sem um determinado excerto de código. Isto supostamente seria possível, integrando o código da iframe, procurando pelo html que não quero, e substituí-lo por nada, no entanto, não estou a ver como conseguir o código do html da iframe.

Sugestões?
Offline

Jeckerson 
Membro
Mensagens 34 Gostos 0
Feedback +1

Troféus totais: 22
Trófeus: (Ver todos)
Level 5 Level 4 Nineth year Anniversary Eighth year Anniversary Super Combination Combination Topic Starter Poll Voter Level 3 Level 2

1) Parse conteudo do URL
2) Remover partes que nao precisas
3) Meter naquela parte onde e frame
4) Se calhar fazer cache apos 1), porque pode demorar muito tempo de copiar toda a pagina do frame

Código: (php) [Seleccione]
$frame_link = 'www.google.com';

//lets do some cool temporary cache which would be remove for example by cron every 5 min
$cahce_file = 'cache/frame_link.cache';
if(file_exists($cahce_file))
{
   $frame_content = file_get_contents($cahce_file);
}
else
{
   $frame_content = file_get_contents($frame_link);
  
   //cache it!
   $handle = fopen($cahce_file, 'w+');
   fwrite(trim($frame_content), $handle);
   fclose($handle);
}
$frame_content = preg_replace('/parte_que_nao_precisas/', '', $frame_content);

//agora em vez de iframe, metes um div por exemplo
$html = '<html><head></head><body><div id="iframe">'.$frame_content.'</div></body></html>';

echo $html;

//Some sh*t like that