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

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

IP-Sperre

IP-Sperre mit PHP und MySQL Oder wie man einen User für eine gewisse Zeit aussperrt. ...

webmaster1@

Autor : webmaster1@
Category: PHP-Tutorials

Login/Memberbereich mit Sessions

Adminmodul für das eigene Gästebuch, Controlpanel eines Forum oder einfach nur für ein geschützer Bereich. ...

webmaster1@

Autor : webmaster1@
Category: PHP-Tutorials

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

Verschlüsslung bzw. Codierung von HTML Code in ASCII

HTML Code können wir ebenso gut in ASCII Code umwandeln. Zunächst einmal ein paar Sätze dazu, wozu man ASCII Zeichen benötigt und wozu Ihnen dieses Script dient. ...

Lukas Beck

Autor : Lukas Beck
Category: PHP-Tutorials

Responsive Webdesign

Einstieg in Responsive Webdesign und Grids ...

admin

Autor : admin
Category: Other tutorials

MySQL Klasse

In meinem kleinen Tutorial zeige ich euch, wie ihr ganz einfach eine kleine MySQL Klasse schreiben könnt. ...

Borlabs

Autor : Borlabs
Category: mySQL-Tutorials

What do I need to set in WordPress to Stop loading Google Fonts?

Want to stop WordPress from using Google Fonts? Here you can learn what you need to set in WordPress. ...

admin

Autor : admin
Category: Other 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