Gå til innhold

<iframe>-tag, og endringer


Anbefalte innlegg

Hei.

 

Jeg vil hente ut informasjon fra en annen nettside, og tenkte da å benytte iframe.

Problemet er at jeg får med en del tekst og noen linker jeg helst ikke vil ha med.

Går det an å "kutte av" toppen og evt. bunn av iframen (ikke regulere høyde, men regelrett kutte av innholdet) ?

Jeg har forsøkt å sette iframe-tagen inne i en <div>, og sette høye på den, men det gikk heller ikke.

 

Forslag?

Finnes det eventuelt alternativer til iframe, gjerne i PHP, som fikser dette?

 

Takk!

Lenke til kommentar
Videoannonse
Annonse

Nei, det går ikke an med en iframe.

 

I et serversidespråk som PHP, kunne du ha lastet inn koden til den eksterne siden, også behandlet denne (dvs hentet ut de dataene du er interessert i). Dette kan gjøres med ulike regex-funksjoner og funksjoner som explode().

 

:)

Lenke til kommentar
Nei, det går ikke an med en iframe.

 

I et serversidespråk som PHP, kunne du ha lastet inn koden til den eksterne siden, også behandlet denne (dvs hentet ut de dataene du er interessert i). Dette kan gjøres med ulike regex-funksjoner og funksjoner som explode().

 

:)

 

Takk for svaret!

Er det avansert å lage et php-skript som gjør dette, da?

Jeg vil ikke si jeg er HELT nybegynner på php, men jeg har ikke veldig mye kunnskaper heller - vil jeg da kunne få til å lage et slikt skript ved google som hjelp?

Lenke til kommentar

Vil tro du skjønner tegninga relativt fort. :)

 

Du kan dra inn koden fra en fil over HTTP med file_get_contents():

<?php
$code = file_get_contents('http://dagbladet.no/');
?>

 

Deretter kan du splitte opp denne strengen ($code) via funksjoner som preg_match og preg_match_all, eller explode. Explode splitter bare strengen når den kommer til et delimeter, altså kan du feks splitte strengen "453-4-342-555-3" på alle bindestrekene for å få de forskjellige tallene i et array: 453, 4, 342, ... .

 

Les mer om regular expressions (regex) som brukes i funksjoner som preg_match feks her. :)

Lenke til kommentar

Takk for hjelpen så langt!

Jeg har nå kodet det så langt at jeg har fått inn informasjonen på siden min, inklusive den informasjonen jeg vil fjerne. Jeg får også til å bruke explode(), men jeg finner ikke et godt punkt å dele stringen på.

 

Dette er koden jeg vil hente ut informasjon fra:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="no">
<head>
<title>Norsk Tipping</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="/gar/miscellaneous/charity/cha_common.css" />
<script type="text/javascript" src="/gar/common/jquery.js"></script>

<script type="text/javascript" src="/gar/common/com_utility.js"></script>
<script type="text/javascript" src="/gar/miscellaneous/charity/cha_common.js"></script>
<script type="text/javascript">
<!--
var CHA_FROM_DATE = 0;
var CHA_TO_DATE = 1;
var CHA_AMOUNT = 2;
var CHA_PLAYER_COUNT = 3;

var cha_periods = [['To 01.01.2009', 'Sø 31.05.2009', '5 018,-', 60]];

function cha_getPeriods()
{
var o, p, i;
o = new Array();
p = 0;
if(cha_periods.length > 0){
o[p++] = '<table><tbody><tr><td class="stat-header">Fra</td><td class="stat-header">Til</td><td class="stat-header">Beløp</td><td class="stat-header">Antall spillere</td></tr>';
for(i = 0; i < cha_periods.length; i++)
{
o[p++] = '<tr><td>';
o[p++] = cha_periods[i][CHA_FROM_DATE];
o[p++] = '</td><td>';
o[p++] = cha_periods[i][CHA_TO_DATE];
o[p++] = '</td><td>';
o[p++] = cha_periods[i][CHA_AMOUNT];
o[p++] = '</td><td style="text-align: center">';
o[p++] = String(cha_periods[i][CHA_PLAYER_COUNT]);
o[p++] = '</tr>';
}
o[p++] = '</tbody></table>';
}else{
o[p++] = '<table><tbody><tr><td class="stat-message">';
o[p++] = 'Det finnes ingen tilgjengelig statistikk på valgt grasrotmottaker.';
o[p++] = '</td></tr></tbody></table>';
}
return o.join('');
}

$(document).ready(
function()
{
$('#returnButton').hover( function () {
$("#return1").hide();
$("#return2").show();
}, function (){
$("#return2").hide();
$("#return1").show();
});
});

// -->
</script>
</head>
<body onload="cha_initialise();">
<div class="frame"><div id="content" class="content" style="height: 300px;"><table class="content-columns" cellspacing="0" cellpadding="0"><tbody><tr><td id="column0" class="column-0">
<h1>NORDRE HOLSNØY IDRETTSLAG</h1>

<table>
<tr>
<td>
Organisasjonsnummer:
</td>

<td>
993569682
</td>
</tr>
<tr>
<td>
Adresse:
</td>
<td>
Levegen 125
</td>
</tr>
<tr>
<td>
Postnummer:
</td>
<td>

5917
</td>
</tr>
<tr>
<td>
Poststed:
</td>
<td>
ROSSLAND
</td>
</tr>
</table>
<p>
Statistikken viser totalt opptjente grasrotmidler og antall spillere tilknyttet NORDRE HOLSNØY IDRETTSLAG og er i inneværende periode oppdatert pr forrige virkedag.
For allerede avsluttende perioder viser statistikken status ved periodens utløp.
</p>
<script type="text/javascript">
<!--
document.writeln(cha_getPeriods());
// -->
</script>

</td><td><div class="about"><h3>Hva er grasrotandelen?</h3><ul><li>Spilleren kan bestemme at en del av overskuddet til Norsk Tipping kan gå direkte til "sitt" lag / forening</li><li>Krever at grasrotmottaker er registrert i frivillighetsregisteret</li><li>Spilleren kan til enhver tid støtte en grasrotmottaker</li><li>Grasrotmottaker kan byttes når spilleren ønsker det</li><li>Spilleren må ha Norsk Tipping Spillerkort for å delta</li></ul></div></td></tr></tbody></table></div></div><div id="header" class="header">

<form action="#">
<div>

<span id="returnButton">
<img id="return1" width="151" height="25" src="/gar/miscellaneous/charity/images/return_1.gif" alt="Tilbake" onclick="document.location = '/gar/miscellaneous/charity/cha_select.jsp?mode=2&';" style="cursor: pointer" />
<img id="return2" width="151" height="25" src="/gar/miscellaneous/charity/images/return_2.gif" alt="Tilbake" onclick="document.location = '/gar/miscellaneous/charity/cha_select.jsp?mode=2&';" style="cursor: pointer; display: none;" />
</span>

</div>
</form>
</div><div class="logo"><img src="/gar/miscellaneous/charity/images/logo.png" width="240" height="40" alt="" /></div>
</body>
</html>

 

Jeg vil bare hente ut noen få linjer der, sannsynligvis blir de hentet fra javascriptet i headeren. Idèer til hva jeg skal bruke i explode("HER!", $string) ?

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...