Datenbankinhalt für Suchmaschinen aufbereiten

Sie haben eine Datenbankanwendung geschrieben und keiner weiß, welche Daten bei Ihnen zu finden sind. Suchmaschinen gehen natürlich nicht so weit, daß sie Abfragen an die Datenbank senden. Somit bleibt der Inhalt Ihrer Tabelle für Suchmaschinen unsichtbar

Folgendes Script kann dieses Problem in vielen Fällen lösen. Der Inhalt einer Abfrage wird einfach in eine HTML-Datei ausgegeben, die dann von Suchmaschinen durchsucht werden kann.

<?php
// HTML Tags definieren
$kopf="<HTML><HEAD><TITLE></TITLE></HEAD><BODY>";
// Datenbank abfragen
$result=mysql_query("select * from TABELLE order by XY");
// Verbindung zur HTML Datei herstellen bzw. Datei erzeugen
$fp=fopen("inhalt.html","w");
// Kopfdaten
fputs($fp,$kopf);

    while(
$row mysql_fetch_array($result)) {
    
// Abfrageergebnis zu einer Textzeile formen
    
$data=$row["FELD1"].", ".$row["FELD2"].", ".$row["..."]."<BR>";
    
// Textzeile
    
fputs($fp,$data);
    }

// HTML-Tags schlie&szlig;en
$ende="</BODY></HTML>";
fputs($fp,$ende);
// Datei schlie&szlig;en
fclose($fp);
?>

Mit fopen("inhalt.html","w") wird die Datei inhalt.html geöffnet bzw. erzeugt, falls sie nicht vorhanden ist. Zuerst muß das HTML-Gerüst in die Datei geschrieben werden. Das geschieht mit fputs($fp,$kopf).

In der while-Schleife wird das Ergebnis der Datenbankabfrage zu einer Textzeile ungeformt und ebenfalls in die HTML-Datei geschrieben. Sind alle Datensätze abgearbeitet, wird die Schleife beendet und der HTML-Code durch $ende abgeschlossen. Datei schließen - fertig.

Wenn man Frames benützt, kann man im NOFRAME-Bereich einen Link zur Datei inhalt.html legen, dem die Suchmaschinen problemlos folgen können.

Das Script läßt sich noch dahingehend erweitern, daß man für jeden Datensatz eine eigene HTML-Datei erzeugt.

<?php
// Kopf der HTML Datei definieren
// Text festlegen, der angezeigt werden soll.
$kopf="<html><head><title>Inhalt</title>
<meta name="
robots" content="index"></head><body>n
<a href="
http://www.URL_Homepage.de/index.html">Startseite</a>n
Bei <a href="http://www.URL_Homepage.de">www.URL_Homepage.de</a>
finden Sie .... ";

include("
connect.php3");

$result=mysql_query("
select from TABELLE order by XY where ...");

// Erzeugt die Datei "
inhalt.html" in "subdir"
$fp=fopen("
subdir/inhalt.html","w");
// HTML-Kopf
fputs($fp,$kopf);

  while($row=mysql_fetch_array($result)) {
  $ID=$row["
ID"]; 
  // Erzeuge einen Dateinamen aus der ID mit der Erweiterung HTML
  $datei=$ID."
.html";
  $pfad="
subdir/$ID".".html";
  // Erzeugt eine Zeile mit Daten aus der Tabelle
  $data="
<a href="$datei">$row["feld1"].", ".$row["feld2"]</a><BR>";
  // Schreibt die Zeile als Link in die Datei
  fputs($fp,$data);

  // erzeugt eine weitere HTML-Datei
  $fp1=fopen($pfad,"
w");
  $kopf1="
<html><head><title></title>
  <
meta name="robots" content="index">
  </
head><body>n"; 

  fputs($fp1,$kopf1);
  // Erzeugt den Text, der angezeigt werden soll
  $data1="
<a href="http://www.URL_Homepage.de/index.html">
  
Zur Startseite</a>nn
  Bei 
<a href="http://www.URL_Homepage.de">www.URL_Homepage.de</a>
  
finden Sie ...nn".$row["feld1"]."".$row["feld2"]."<br>";

  // schreibt die Daten in die Datei
  fputs($fp1,$data1);
  fclose($fp1);
  }

// Wenn alle Zeilen abgearbeitet wurden, wird das Dateiende erzeugt ...
$ende="
<br>Copyright ...<a href="mailto:blabla@nirgends.com">BlaBla</a>
</
body></html>";
fputs($fp,$ende);
// ... und die Datei geschlossen
fclose($fp);
// Damit man sieht, wann das Script fertig ist:
echo "
Fertig";
?>

Damit haben Suchmaschinen reichlich Futter und finden viele Dateien und Links, die sie indexieren können.

Ratings


Hallo,

also man sollte hier mal das ändern:

[php]
$kopf="<html><head><title>Inhalt</title>
<meta name="robots" content="index"></head><body>n
<a href="http://www.URL_Homepage.de/index.html">Startseite</a>n
Bei <a href="http://www.URL_Homepage.de">www.URL_Homepage.de</a>
[/php]

Das ist zu 100% nicht richtig!

[php]
$kopf="<html><head><title>Inhalt</title>
<meta name="robots" content="index"></head><body>
<a href="http://www.URL_Homepage.de/index.html">Startseite</a>n
Bei <a href="http://www.URL_Homepage.de">www.URL_Homepage.de</a>
[/php]
Written by Nico_Schubert At 27.08.2009 14:49:09

Here you can write a comment


Please enter at least 10 characters.
Loading... Please wait.
* Pflichtangabe

Related topics

MySQL für Anfänger einfach erklärt

Dieses Tutorial richtet sich an Anfänger, die noch nie mit SQL gearbeitet haben. Vielleicht ist aber auch für Fortgeschrittene das Eine oder Andere dabei. ...

admin

Autor : admin
Category: mySQL-Tutorials

ASCII Datenbanken

ASCII Datenbanken sind eigentlich nur Textdateien, in denen man Daten speichert, die durch ein Trennzeichen voneinander getrennt sind. Dieses Tutorial zeigt wie es geht. Mit Übung und Lösung ...

deep_space_nine@

Autor : deep_space_nine@
Category: PHP-Tutorials

SVN Server einrichten

Wie man unter Linux einen Subversion Server einrichtet. ...

admin

Autor : admin
Category: Linux & Server Tutorials

Apache und Windows/XP

Beschreibung zum einrichten des Apache2 unter Windows 2000/XP ...

info225@

Autor : info225@
Category: Linux & Server Tutorials

Unkaputtbare Hyperlinks

Wer das Publizieren im Internet nicht bloß als technische Spielerei oder gar eine Designtätigkeit auffasst, wird automatisch ein digitaler Bibliothekar ...

chris@

Autor : chris@
Category: PHP-Tutorials

phpinfo() shows nothing

Today I want to show you how to output the phpinfo(). ...

Webmasterfreaky

Autor : Webmasterfreaky
Category: PHP-Tutorials

Gästebuch mit Datenbankanbindung

Dieses Tutorial beschreibt ausführlich wie ein Gästebuch in PHP und mySQL programmiert wird. ...

andy@

Autor : andy@
Category: PHP-Tutorials

Konfiguration eines Linux-Rechners als DSL-Router

Dieser Artikel beschreibt wie man unter LINUX einen DSL-Rooter für Windows konfiguriert. ...

tschiesser@

Autor : tschiesser@
Category: Linux & Server Tutorials

Publish a tutorial

Share your knowledge with other developers worldwide

Share your knowledge with other developers worldwide

You are a professional in your field and want to share your knowledge, then sign up now and share it with our PHP community

learn more

Publish a tutorial