Tabel Linken

Status
Niet open voor verdere reacties.

Jessedev

Gebruiker
Lid geworden
14 mrt 2008
Berichten
44
Hallo helpers,

omdat ik er zelf niet meer uitkom zoek ik het maar hogerop. Op mijn website zou ik graag bepaalde informatie (een tabel) van een andere website realtime willen weergeven. Inmiddels ben ik erachter dat het om de volgende request gaat:

Code:
http://uc.worldoftanks.eu/uc/clans/500001757/members/?type=table&offset=0&limit=100&order_by=name&search=&echo=1&id=clan_members_index

Als response krijg ik terug:

HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content="HTML Tidy, see www.w3.org" />
<title></title>
</head>
<body>
{"request_data":{"items":[{"account_id":500651188,"member_since":"13.05.2011","banned":false,"role_id":"recruit","role":"Recruit","name":"Harm_sonn"},{"account_id":500646223,"member_since":"12.05.2011","banned":false,"role_id":"recruit","role":"Recruit","name":"Jesdev97"},{"account_id":500642975,"member_since":"11.05.2011","banned":false,"role_id":"leader","role":"Commander","name":"Perseus1"}],"total_count":3,"filtered_count":3,"offset":0,"echo":1},"result":"success"}
</body>
</html>

En op de website waar het vandaan komt ziet het er zo uit:

tabledm.png


Nu zou ik deze informatie ook in een tabel wilen weergeven op mijn eigen website, maar als de informatie (inhoud van de tabel) veranderd, moet ook de informatie op mijn website veranderen.

Ik hoop dat jullie kunnen helpen want in HTML kom ik er niet uit. Mocht het zo zijn dat dit een probleem is voor een andere programmeertaal dan hoor ik het graag, maar ik had zelf het idee dat het wel moet lukken ;).

Groeten,

Jesse
 
maar ik had zelf het idee dat het wel moet lukken

Niet dus.


De informatie die je op het scherm ziet verschijnen
staat ergens op de server van Worlds of Tanks opgeslagen.

Die informatie kun je alleen zelf realtime weergeven als je verbinding maakt met dezelfde database op dezelfde server.


Even omgekeerd redeneren:

Alles wat je zelf wilt weergeven via het scherm (jouw website)
moet in html-code komen te staan.

Als je iets wilt weergeven moet je die informatie zelf eerst vastleggen;
je moet dus in een bestand of een database die gegevens vastleggen die uit een externe bron komen (het tabelletje van Worlds of Tanks)
Daar heb je dan toch wel een paar tussenstappen voor nodig.

Als je realtime de gegevens van WoT wilt weergeven,
zul je op de een of andere manier toegang moeten hebben tot hun eigen bron.

Anders ben je gedoemd tot het 'overschrijven' van hun website.
 
Dus als ik het goed begrijp is het niet mogelijk om de response (html-pagina) weer te geven op mijn eigen site. Want als ik de request verzend krijg ik het tabelletje weer terug.

Groeten,

Jesse
 
Dus als ik het goed begrijp is het niet mogelijk om de response (html-pagina) weer te geven op mijn eigen site.

Nee, natuurlijk niet.
Kun je de pagina van Helpmij waar je nu naar zit te kijken
exact zo weergeven op je eigen website? Nee


Want als ik de request verzend krijg ik het tabelletje weer terug.

Foute denkwijze: je krijgt geen tabelletje terug, je krijgt een webpagina terug, waarin gegevens worden getoond.
 
Voor alle duidelijkheid dit gaat WEL!

Je kan met PHP een deel van een website ophalen dit gebeurd met CURL. Hier heb ik een voorbeeld van een scriptje dat de tabel ophaald van mijn website.. (http://dieterg.sin.khk.be) resultaat --> http://dieterg.sin.khk.be/helpmij

Script dat ik ervoor gebruikt heb:

PHP:
<?php
$ch = curl_init();
$timeout = 5; 
curl_setopt ($ch, CURLOPT_URL, 'http://dieterg.sin.khk.be/'); //paste hier uw website in
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
$pagina = $file_contents;

//zoek in de broncode naar het eerste element dat je wil opzoeken (in mijn geval <h2 id="score">
if(strpos($pagina, '<h2 id="score">')){
	$positie = strpos($pagina, '<h2 id="score">');
        //zoek naar het volgende element dat je wilt tonen. in mijn geval </table>!
	$positieEind = strpos($pagina,'</table>',$positie);
	
        //toon het resultaat!
	echo substr($pagina, $positie, ($positieEind - $positie) + 8); //hier moet je nog + 8 doen omdat anders </table> niet goed sluit!
}
?>

edit: ik wou het met uw link doen maar die werkt blijkbaar niet? 'File not found' krijg ik.. :(

Mvg Dieter
 
Laatst bewerkt:
In het voorbeeld werkt dit binnen een bepaalde site.
Maar kan dit ook zomaar, als je gegevens wilt aftappen van een andere site/server dan die waarop de aanroepende pagina staat?
(Dan zou met deze functie het plagiaat niet van de lucht zijn! :shocked: )
 
Laatst bewerkt:
In het voorbeeld werkt dit binnen een bepaalde site.
Maar kan dit ook zomaar, als je gegevens wilt aftappen van een andere site/server dan die waarop de aanroepende pagina staat?
(Dan zou met deze functie het plagiaat niet van de lucht zijn! :shocked: )

Je hebt gelijk ik wou gewoon even aantonen dat het wel mogelijk is ;-)!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan