Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

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 ^^.

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

Das ist ja Klasse :D funktioniert direkt einwandfrei un dmacht genau was ich will :D.

Ich danke dir =).

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.

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.

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

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.

- 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

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?

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.