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

Login Skript mit OOP, Sessions und einer MySql Datenbank (Teil 1)

Realisierung eines Login Skriptes mit einer MySql Datenbank, Sessions und PHP mit Objekt orientierter Programmierung. ...

Samir

Autor : Samir
Category: PHP-Tutorials

Eines Warenkorbsystem für Anfänger

Ein kurzes Tutorial für Anfänger um ein einfaches aber funktionelles Warenkorbsystem zu erstellen. Freue mich über Rückmeldungen und Kritik - denn nur so verbessert man sich :) ...

web3hoster

Autor : web3hoster
Category: PHP-Tutorials

Tutorials zu Facebook Anwendungen mit PHP

In mehreren Tutorials wird der Zugriff auf Facebook Daten mittels Graph API, FQL und REST API erklärt. Alle Codebeispiele liegen zum Ausprobieren in einem SVN, bzw. github Repository bereit. ...

abouttheweb

Autor : abouttheweb
Category: PHP-Tutorials

Hier ein kleines allgemeines Tutorial zu PHP

Die Einleitung ist in folgende Themen aufgeteilt: -Einleitung -Variablen -Parameterübergabe -Funktionen -Schleifen -IF-Abfragen Am besten Sie schauen sie sich der Reihenfolge nach an. ...

demiangrandt@

Autor : demiangrandt@
Category: PHP-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

abhängige Listen

In einem Formular sollen neben mehreren anderen Eingabefeldern auch zwei Listen (Select-Felder) zum Einsatz kommen. Dabei soll der Inhalt der zweiten Liste vom gewählten Wert der ersten Liste abhängig verändert werden. ...

Patrick_PQ

Autor : Patrick_PQ
Category: mySQL-Tutorials

Das 'Nested Sets' Modell - Bäume mit SQL

Das 'Nested Sets' Modell - Bäume mit SQL

Dieses Tutorial beschreibt die 'Nested Sets'-Technik, mit der man solche Bäume mit SQL performant konstruieren kann. ...

gorski@

Autor : gorski@
Category: mySQL-Tutorials

Verschlüsselungsalgorithmus

Dieses Tutorial zeigt einen Verschlüsselungsalgorithmus von Texten nach dem PHP Data Encryption Standard. ...

Lukas Beck

Autor : Lukas Beck
Category: PHP-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