Baumeister Mediasoft Engineering BME - Baumeister Mediasoft Engineering  PHP Application: Display/View Web Page Contents/Source - English Version PHP-Anwendung: Webseiteninhalt/-quellcode anzeigen - Deutsche Version
Baumeister Mediasoft Engineering
Bartels AutoEngineerCarLogDienstleistungenRessourcenFirmenprofilKontakt
Baumeister Mediasoft Engineering » Ressourcen » Webentwicklung » PHP » Applikationen » Webseitenquellcode anzeigen
PHP-Anwendungen

PHP-Anwendung: Webseiteninhalt/-quellcode anzeigen

PHP - PHP Hypertext Preprocessor

Einleitung

Die meisten Webbrowser haben eine Funktion zur Anzeige des Quellcodes der aktuell geladenen Webseite. Manchmal ist es allerdings nützlich, den Quellcode einer Webseite zu sehen ohne zuvor die entsprechende Webseite in den Webbrowser geladen zu haben. Beispiele hierfür sind Webseiten die unmittelbar auf andere Webseiten umgeleitet werden, Stylesheets (CSS-Dateien), JavaScripts (JS-Dateien), oder Webseiten, bei denen Sie den Verdacht haben, dass sie möglicherweise unerwünschte Aktionen (Hacker-Scripts, etc.) auslösen. Die PHP-Funktion file_get_contents() kann dazu benutzt werden, den kompletten Inhalt einer Datei in eine Stringvariable einzulesen:

string file_get_contents(string filename)

Bei Aktivierung der fopen-Wrapper für den Zugriff auf URLs (PHP-Option/-Variable allow_url_fopen auf 1 gesetzt) kann für den Dateinamensparameter der Funktion file_get_contents() auch eine Webadresse angegeben werden.

PHP-Skript

Der folgende PHP- und HTML-Code generiert eine HTML-Seite mit einem Formular zur Abfrage der Webadresse (URL) einer Datei für die der Quellcode angezeigt werden soll. Ausserdem enthält das Formular eine Checkbox über die ein automatischer Zeilenumbruch bei der Quellcodeanzeige aktiviert werden kann. Wenn eine Webseitenadresse angegeben wurde, dann wird der Quellcode dieser Webseite in einem <textarea>-Tag angezeigt. Zur einfacheren Selektion des angezeigten Textes (für nachfolgendes Kopieren) wird über ein JavaScript eine entsprechende Schaltfläche (Alles selektieren) angezeigt.

<?php
// viewwebpagesource.php - Display/view contents/source of URI-specified web page
// Copyright (c) 2003-2006 by Manfred Baumeister (http://www.bme.ie)

// Page title
$pagetitle  'Baumeister Mediasoft Engineering :: Ressourcen :: '
    
.'PHP-Applikation: Webseiteninhalt/-quellcode anzeigen'
    
;
// Messages
$fmturl     '<p style="margin:0px;">"%s" Inhalt/Quellcode:</p>'."\n";
$nosource   '<span style="color:red;">* leer / nicht gefunden *</span>';
// Form parameters
$url        = isset($_REQUEST['url']) ? $_REQUEST['url'] : '';
$dowrap     = isset($_REQUEST['wrapsource']) && !empty($_REQUEST['wrapsource']) && ($_REQUEST['wrapsource'] == 'on') ? 0;
?>
<html>
<head>
<title><?php echo $pagetitle;?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body style="background-color:#cfcfcf;font-family:Arial;sans-serif;font-size:12px;">
<h3 style="font-size:13px;margin-bottom:0px;"><?php echo $pagetitle;?></h3>
<hr />
<form method="post" style="margin-top:4px;margin-bottom:4px;">
URL <input style="font-size:12px;" type="text" size="50"
 name="url" value="<?php echo empty($url) ? 'http://' $url;?>" />
<input style="font-size:12px;" type="checkbox"
 name="wrapsource"<?php if ($dowrap) { echo ' checked="checked"';}?> />Wrap
<input style="font-size:12px;" type="submit" value="Go" />
</form>
<?php
if (!empty($url))
{
    
// Start web page output
    
echo '<hr />'."\n";
    
// Display selected URL
    
echo sprintf($fmturl$url);
    
// Enable URL-aware fopen wrappers to allow for URL file reading
    
if ((double)phpversion() >= 4.2)
    {
        
ini_set('allow_url_fopen''1');
    }
    
// Read file
    
$s = @file_get_contents($url);
    if (empty(
$s))
    {
        
// Web page empty/access failure
        
echo $nosource;
    }
    else
    {
        
// Display web page contents/source using form/textarea
?>
<form name="_webpagesource_" style="margin-bottom:0px;">
<script type="text/javascript" language="JavaScript">
<!--
// Display select all button
document.write('<input style="font-size:12px;" type="button" value="Alles selektieren"'
    + ' onclick="document.forms[\'_webpagesource_\'][\'_src_\'].select();"'
    + ' />'
    );
//-->
</script>
<table width="100%" height="80%" border="0" cellspacing="0" cellpadding="0"><tr>
<td style="vertical-align:top;">
<textarea id="_src_" style="width:100%;height:100%;"
 wrap="<?php echo $dowrap 'virtual' 'off';?>">
<?php echo htmlspecialchars($s);?>
</textarea>
</td>
</tr></table>
</form>
<?php
    
}
}
?>
<hr />
<p style="margin:0px;font-size:9px;color:#666666;">
Copyright &#169; 2003-<?php echo date('Y');?>
 <a href="http://www.bme.ie" target="_top">Manfred Baumeister</a>
</p>
</body>
</html>

Beispiel

Nachfolgend die Anzeige der obige HTML-Seite in einem <iframe>-HTML-Tag:

Klicken sie hier zum Öffnen der obigen Seite in einem eigenen Fenster.

Baumeister Mediasoft Engineering » Ressourcen » Webentwicklung » PHP » Applikationen » Webseitenquellcode anzeigen

PHP-Anwendung: Webseiteninhalt/-quellcode anzeigen • © 2019 Manfred Baumeister • Aktualisiert: 02. Oktober 2010, 23:36 [UTC]

Baumeister Mediasoft Engineering, Clontarf, Dublin 3, D03 HA22, Irland
© 2019 Manfred Baumeister

PHP Application: Display/View Web Page Contents/Source - English Version PHP-Anwendung: Webseiteninhalt/-quellcode anzeigen - Deutsche Version