HTML Link aus Txt-Datei auslesen und in Html ausgeben

AMD4Ever

Ensign
Registriert
Apr. 2008
Beiträge
188
Hallo Experten!
Ich habe mal eine Frage an euch!
Ich habe immer wieder "Broken Links" auf meiner Seite, weil sich die Links nach und nach ändern.
Ne Idee wäre von mir, die Link-Adresse, also die URL in einer Textdatei zu speichern und diese
irgendwie mit wenig Programmieraufwand auszulesen und diese auszugeben.

Kann mir jemand auf die Sprünge helfen wie ich also nen Link aus ner Textdatei auslesen kann und in <A href=""> einbinden lassen kann??
 
Als erstes... ich hab dein Problem nicht verstanden. Trotzdem: das ist kein grosser Akt. Allerdings ist das mit HTML nicht möglich. HTML ist lediglich zur Darstellung da. PHP wäre dazu notwendig :-)
 
1. es gibt Linktests (--> Google), brauchst also nichts programmieren
2. wieso überhaupt nen Link aus ner Textdatei auslesen [..] und in <A href=""> einbinden? Die Links auf deiner Seite stehen doch vermutlich/hoffentlich so oder so schon in a-Tags?​

Aber eigentlich würde ich bei 3. anfangen und das Problem an der richtigen Stelle anpacken:
3. wieso ändern sich deine Links dauernd?​


Kann natürlich auch sein, dass ich dein Problem nicht verstanden habe :D
 
Zuletzt bearbeitet:
Es geht mir wie gesagt nur darum, dass ich den Link, der sich ja bekanntlich ändern kann, in einer HTML-Datei befindet. Weil mehrere Seiten auf eine Seite verknüpft sind, müsste ich jede Seite anpacken, den Link auf jeder Seite anpassen und jede Datei hochladen.

Einfacher wäre es doch, wenn man einfach den Link in einer Textdatei speichert, und nur einmalig überall zuweisen muss. Dann braucht man nur die Textdatei ändern und alles funtkioniert wieder.

Es wäre gut, wenn ich mehrere Links in einer Text-Datei ablegen kann und ich auf jeden Link über eine Art ID zugreifen kann.
Ergänzung ()

3. wieso ändern sich deine Links dauernd?

Weil meine Seite recht dynamisch ist und nicht nur Fotos von Inselurlauben u.s.w. darstellen soll.
 
verstehe... Also quasi ein Frameset Ersatz? :D

Und wieder verweise ich auf PHP... Da kannst du Quasi Html "programmieren" und eine zusätzliche Html Datei erstellen mit der Navigation drin und diese anschliessend includieren...

Quasi so:
index.php
Code:
...
<body>
text text text
<?php
  include(navigation.php);
?>
text text
</body>
...

Die Navigation.php kann reines html sein.

GANZ gross (ich weis dass es weder sauberes html noch sauberes php ist).
 
Ist zwar mit Sicherheit ein bisschen Offtopic, aber da ich neulich selbst erst nach einer Lösung für Link-Checks gesucht habe, fand ich folgendes Excel Makro:

Code:
Option Explicit
Private Const FIFC = &H1
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias  "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As  Long, ByVal dwReserved As Long) As Long
Sub Hyperlink_testen()
Dim objHL As Hyperlink
For Each objHL In ActiveSheet.Hyperlinks
  If InternetCheckConnection(objHL.Address, FIFC, 0&) = 0 Then
    MsgBox "Fehlerhafte URL in:  " & objHL.Range.Address(0, 0) &  Space(10), 64, "Weise hin..."
    objHL.Range.Select
  Else
    MsgBox "Link OK in Zelle:  " & objHL.Range.Address(0, 0) &  Space(10), 64, "Gebe bekannt..."
  End If
Next
End Sub
Vielleicht für den ein oder anderen interessant.
 
wie bereits erwähnt, mit html auf keinen fall. Das kann html nun mal nicht. Meine Lösung ist bestimmt die Sinnvolle, weil man es einfach so macht. Wo ist das Problem? dafür braucht man nicht mal PHP Kenntnisse. Kann dir das auch noch genauer erklären wenn du möchtest.
 
hmm, ich dachte, dass könnte so ähnlich funkionuckeln wie z.b. mit dem <a name>xzy</a>
und dem link <a href="xxx.html#xyz">

Aber ok, wenn du mir das besser erklären kannst, dann wäre das echt nicht übel von dir.
 
Als ersten kläre ab ob bei dir aufm Webspace PHP funktioniert. Das machst du ganz einfach in dem du eine Textdatei mit dem Inhalt
Code:
<?php
  phpinfo();
?>
erstellst, sie test.php nennst und sie auf deinen Space lädst. Wenn du die Datei anschliessend aufrufst gibt es zwei Szenarien:
1. Der Browser bietet dir die Datei zum Download an
2. Der Browser zeigt dir deine Serverkonfiguration an

Das erste bedeutet, dass dein Server kein PHP unterstützt. Beim zweiten Fall ist alles in Ordnung. So, nun zum eigentlichen.

Erstelle eine weitere Textdatei und nenne sie navigation.php. Da kannst du dann alle deine Links einfügen (Per html, so wie immer). Speichere die Datei und lade sie auf deinen Server ins Verzeichnis wo auch deine HTML-Seiten liegen.

Dann nimmst du deine eigentliche Homepage, bzw einfach mal eine Seite und nennst die Endung davon in PHP um. (z.B. index.html -> index.php)

Nun öffnest du die gerade umbenannte Seite in deinem Editor und ersetzt deine Navigation mit folgendem Code:
Code:
<?php
include('navigation.php');
?>

Lade die Seite hoch und ruf sie auf. Der Inhalt der navigation.php wird nun in die Datei eingebunden als wäre es eine einzige Datei. Das machst du dann noch bei allen anderen. Für das Ändern oder Hinzufügen eines Links musst du nun nur noch eine einzige Datei bearbeiten.

Ich hoffe das hilft dir. Bei fragen einfach nochmal posten.
 
ja super, das rennt ja schonmal, sag mal, wenn man schon dabei ist, muss man dann für jeden Link eine php-Datei erstellen, oder kann man ID-mäßig da irgendwie auf einen Link zugreifen???

Aber laufen tut das schon mal sehr gut!

Danke dafür schonmal!:)
 
inwiefern meinst du? du kannst in die navigation.php ja auch 1000 links reinschreiben... oder meinst du links, die dynamisch den inhalt laden? dafür wäre ne datenbank und ein paar kenntnisse mehr notwendig
 
ja, ungefähr wie mit ner Datenbank, aber für nen Anfang ist auf jeden Fall ideal!
Das ist ja echt genial einsetzbar. Wenn du mal auf meine Seite gehst und dich alleine mal unter Hardware-Infos und dann unter den Mainboards durchschaust, dann siehst du, wie deine Hilfe mir einen imensen Programmieraufwand erspart.
 
Hier mal eine Version in Javascript:

1. Der Link:

Code:
<a class="nav" id="0" href="#" onclick='link_url(this.id)'>Link1</a>
<a class="nav" id="1" href="#" onclick='link_url(this.id)'>Link2</a>

2. das Script:

Code:
var linkURL = new Array (
			"http://www.google.de/",
			"https://www.computerbase.de/"
			);

function link_url(id) 
{
	var value = linkURL[id];
 	
	window.location.href = value;
}

Du kannst in der der Funktion natürlich nun auch noch ein Test einfügen, ob die Seite existiert und den Fehler abfangen. Aber so brauchst nur noch das Scritp auf alle Seite laden und im Array immer nur die Links ändern.

Für alle die jetzt sagen "Und was wenn Javascript ausgeschaltet ist?", man kann das Beispiel sicher auch in PHP umsetzen, denn der Ansatz bleibt der selbe.

Gruß

HD
 
Zurück
Oben