Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo und liebe Grüße =),

also folgendes Problem.

Ich habe eine Seite, auf der einiege Sachen aktualisiert werden sollen.

Die Seite ist rein HTML. Auf der Seite befindet sich ein Button. Drückt man diesen Button so wird ein PHP Script ausgeführt der Links ausliest und diese dann ausgibt.

Das ist der immer mal wieder zu aktualisierende Teil.

Probelm ist nun, dass der Browser nach Klick auf den Button auf der HTML Seite zwar den PHP Script ausführt, aber nun die Ergebnisse des PHP Scriptes anzeigt.

Zum Verständniss. Das PHP Script liest von einer Seite links aus, und speichert diese in eine HTML Datei. Das klappt auch alles wunderbar.

Ich hätte das aber gerne dass der Browser dann aber auch automatisch nach der Ausführung des PHP Scriptes wieder auf die ursprüngliche Seite zurück springt. Weil auf dieser die Ergebnisse zusammen mit festen HTML Elementen weiter unten in einem Frame angezeigt werden. Zur weiteren Verwendung.

Ist das machbar? Ich habe das Forum durch sucht und habe bereits gegoogelt wie ein bekloppter :D. Aber nichts brauchbares für das Problem finden können ^^.

Geschrieben (bearbeitet)

Hallo,

ja es gibt in PHP eine Funktion:

header('Location: index.html');

diese Leitet die Seite um.

In deinem Fall einfach auf das gleiche Document umleiten und schon hast du deine Aktualiserung.

Gruß

Carlos87

Bearbeitet von Carlos87
Geschrieben

Wenn du mir jetzt noch sagen kannst wie ich per PHP exakt die ersten 132 Zeichen der vom Script geschriebenen HTML Seite im Quellcode löschen kann und der rest drin stehen bleibt dann wär das super :D.

Habe mir mal einen Lösungsansatz gebastelt der mir Wörter weg löschen soll aber das klappt nicht :D.der fängt dann an auch nach den 132 Zeichen rum zu schnippeln obwohl da gar nix weiter drin vorkommt.

Geschrieben

Ja na klar.

Das ist also der Quellcode aus der PHP Datei die ausgeführt wird und auch gleich zurück leitet. Da sklappt ja super =).

<?php
// HTML Datei einlesen
$content = file_get_contents("http://****");

//----------------------------------------
//Beginn Zeilen Löschen
// $lines=file("ausgelesene_links.html");
// $file=fOpen("ausgelesene_links.html","w");
// $begin="a"; //Zu Löschende Zeilen
// for ($i=0;$i<count($lines);$i++)
// if (substr(strtolower($lines[$i]),0,count($begin))!=strtolower($begin))
// fputs($file,$lines[$i]);
// fClose($file);
//Ende Zeilen Löschen
//----------------------------------------
// Links aus der Variable holen
preg_match_all("!<a.*?href=\"([^\"]*)\"[^>]*>(.*?)</a>!s",$content,$ergebnisse);
//----------------------------------------
// Alle Links ausgeben
foreach ($ergebnisse[1] as $link) {
echo $link.'<br>';
}
// Alle Titel ausgeben
foreach ($ergebnisse[2] as $titel) {
echo $titel.'<br>';
}
//----------------------------------------
$dateiname = "ausgelesene_links.html"; //Name der Datei
// Datei öffnen - Wenn nicht vorhanden dann erstellen
// $handler = fOpen($dateiname , "a+");
// Dateiinhalt in die Datei schreiben
// fWrite($handler , $link.'<br>');
// fClose($handler); // Datei schließen
// $handler = fOpen($dateiname , "a+");
// fWrite($handler , $titel.'<br>');
// fClose($handler);
//----------------------------------------
$fp = fOpen('ausgelesene_links.html', 'w'); //'w' Erstellt den Inhalt immer neu - 'a+' fügt neuen Inhalt immer am Ende an
foreach($ergebnisse[2] as $values) fWrite($fp, $values.'<br>');
fClose($fp);
//----------------------------------------
header('Location: http://127.0.0.1/******');
?>[/PHP]

Da ist ne ganze menge auskommentiert, da waren eben besagte lösungsansätze zum löschen dabei und so weiter :D hab ich aber alles noch drin gelassen man weis ja nie :D.

Jedenfalls soll er nach dem er die Links in die html datei geschireben aus dem geschriebenen die ersten 132 zeilen weg löschen weil die unbrauchbar sind für die weiterverwendung.

Geschrieben

Trotzdem großes danke an dich =) Hast mir da schon sehr weiter geholfen.

Ich bin hier auch nur Azubi und leider der einziege der sich überhaupt n bischen mit PHP und HTML auskennt :D naj aauskennen im geringen Maße wa :D

Geschrieben

Ob die Ausgabe nun gepuffert wird oder nicht ist mir eigentlich relativ egal. Hauptsache eine feste Anzahl der ersten Zeichen werden gelöscht. Das Script kann die Datei ja nach dem die Daten geschrieben wurden noch mal anfassen.

Aber ich habe momentan keinen ordentlichen Ansatz wie ich das hin bekommen soll. Bestimmte sonderzeichen löschen, ok. Aber das ist ja nicht das Ziel und geht irgendwie immer schief. Es werden immer die gleiche Anzahl der aller ersten Zeichen des Quellcodes in der HTML Datei gelöscht. Oder eher sollen dann automatisch gelöscht werden.

Geschrieben

- Puffern starten

- alles mögliche machen

- Inhalt des Puffers auslesen, speichern und den Puffer leeren

- gespeicherten Puffern bearbeiten (z.B. $buffer = array_slice($buffer,$offset)

- Puffer ausgeben

- Puffern stoppen und Ausgeben

Geschrieben

Wäre es nicht einfacher ihm nach dem die Datei geöffnet ist und der Inhalt geschrieben wurde zu sagen lösche nun die ersten 132 Zeichen einfach weg und speicher das dann ab? So in etwa dachte ich mir das nur kein Plan man das anstellt -.-. Alles was ich bislang versucht habe ging entweder gar nicht oder hat dann auch irgendwo hinten was weg gelöscht.

Die obere Methode macht durch aus einen guten Eindruck aber das aus zu arbeiten ist mir glaube ich für das was es gerade mal machen soll zu umständlich.

Muss doch basierend auf mein Script noch n kleinen Zusatz geben der das machen kann?

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...