| 

.NET C# Java Javascript Exception

2
Hi All,

auf meiner Seite möchte ich einen Vergleichsrechner von einer externen Website einbinden.
Für die User sollte es so aussehen, als wäre dieser externe Vergleichsrechner ein Teil von meiner Website und kein Guckloch via iframe/object Tag, wobei man noch scrollen muss.
Habe versucht per CSS das Guckloch zu stylen, was einfach nicht ganz gelingt.

Die jQuery funktion .load(), mit der ich die externe Website in ein DIV laden wollte, wirft in seiner callback function immer die Meldung "ERROR" aus (sehr hilfreiche Nachricht!!)

und die file_get_contents Variante via PHP führt auch nicht wirklich zum Erfolg, da ja die relativen Pfade zu den StyleSheets, Scripts etc. nicht mehr passen.

Ich hoffe mein Anliegen war soweit verständlich und freue mich auf EUER hilfreiches Feedback.
News:
13.11.2014
ILLmaxon 125 1 5
2 Antworten
1
Du kannst das Serverseitig mit PHP machen, allerdings nicht mit file_get_contents sondern indem du die einzubindende Webseite parst, die Pfade für Styles und JS anpasst und dann in deiner Seite ausgibst.

Ein Ansatz könnte so aussehen:
$html = new DOMDocument();
$html->loadHTMLFile("http://www.example.com/rechner.html");
$xpath = new DOMXPath($html);

$newdoc = new DOMDocument(); // hier kommt der überarbeitete HTML-Code rein

// hier die gewünschten Bereiche suchen und ggf. bearbeiten
$content = $xpath->query(''//ul[@class="menu"]'');
foreach($content as $node) {
// nodes die unverändert übernommen werden können einfach geklont werden
$cloned = $node->cloneNode(true);
$newdoc->appendChild($newdoc->importNode($cloned, true));
}

// überarbeiteten remote-content ausgaben
echo $newdoc->saveHTML();


Falls du die Methode verwenden willst, achte bitte darauf, dass du das auch darfst. Immerhin kannst du damit fremde Inhalte als eigene ausgeben, der fremde HTML-Code kommt dann ja direkt von deinem Server...

Nachtrag: Für JS oder CSS müsste ich schon etwas Code von dir sehen...
13.11.2014
phg 1,6k 3
0
ich habe nun ein paar Sachen ausprobiert und habe mich am Ende für das iFrame entschieden.

Damit habe ich eigentlich 'nur' noch ein Größen Problem. Die Breite ändert sich sowieso nicht, deshalb kann ich die ja fix im iFrame Tag angeben, wie mach ich das aber mit der Höhe.

Je nach Angaben und Berechnung erhalte ich eine kürzere/längere Liste an Ergebnissen.
Ist es möglich die Höhe des iFrames nach der Länge der Ergebnisliste einzustellen?
02.12.2014
ILLmaxon 125 1 5
Kannst du etwas Beispiel-Code zeigen? So rein von der Beschreibung her kann ich dir leider nicht ganz folgen. (Eigentlich hättest du dafür auch eine neue Frage aufmachen können ;) )
phg 02.12.2014

Stelle deine Javascript-Frage jetzt!