Moin,
ja natürlich kann man das Script "MySQL Nachrichten" vom Werner ebenso direkt in Mobirise einbauen, das hatte ich ja schon Jahre zuvor auch in NOF direkt eingebaut. Hier ist genau das gleiche Script in NOF, nur eine ältere Version aus dem Jahr 2013:
http://www.nof-tutorials.com/Nachrichten/
In NOF gab es mit den Anker-Links keinerlei Probleme - in Mobirise schon.
Das
Problem liegt also
überhaupt nicht im direkten Einbau, sondern es liegt immer bei den
Anker-Links, den IDs zum korrekten Sprung auf den Mobirise-Block.
Gerade diese Anwendung hat Werner auch total einfach zum Inkludieren eingerichtet. Man schreibt nur diese eine Zeile als PHP-Include in seinen Block von Mobirise:
... müsste dann aber natürlich die Mobirise-Seite mit dem Einbau-Block auch auf die Dateierweiterung
.php umstellen, denn nun müsste ja PHP auch verarbeitet werden können (im Gegensatz zum Iframe).
Damals, als ich das Nachrichten-Script im Jahr 2020 in Mobirise verwendet habe, hatte Werner gerade auch ein JavaScript entwickelt um einen
dynamischen Iframe darzustellen. Da dieses Nachrichten Skript eine Menge Navigation hat, entsteht in Mobirise immer das gleiche Problem mit den
Anker-Links dazu, die man immer in den Skripten vom Werner komplett neu schreiben muss, was gerade beim Nachrichten Skript sehr aufwändig ist, damit man diese Anker dann über ein eigens zu entwickelndes JavaScript ansteueren kann.
Der PHP
ECHO Befehl und andere PHP Anweisungen, wie der
POST Befehl, werden von Mobirise nicht zu einem
Anker-Link (#anker) weitergeleitet, sie landen alle nur "oben" auf der Seite.
So kam mir das damals ganz gelegen und ich habe das mal (ausnahmsweise) über dieses dynamische Iframe eingebunden, damals auch nicht zuletzt, um dieses dynamische Iframe überhaupt auch mal zu testen.
Sämtliche anderen Anwendungen vom Werner habe ich alle direkt eingebunden, wie Formulare, Gästebücher, Kommentare, sonst etwas. Auch da gab es immer wieder das Problem der Navigation, denn man will ja den Anker auf die Seiten der Anwendung setzen und nicht auf die Mobirise-Seite (oben). Es benötigt dann immer ein extra JavaScript zu dem man immer alles auch im Skript vom Werner umschreiben muss.
Das einem Anfänger klar zu machen und zu erklären, möchte ich vermeiden.
Beispiel vom
Gästebuch:
https://www.mobirise-tutorials.com/Gastbuch.php
Code: Alles auswählen
<!-- Reload für Gästebuchseiten -->
<script>
function myPage(seite) {
window.location.href = 'Gastbuch.php?seite=' + seite + '#content1-aw';
}
</script>
Beispiel-Zeile im Script
POST:
Code: Alles auswählen
<form name="Form" action="Gastbuch.php?eintragen#content1-aw" method="post">
Beispiel-Zeile im Script
PRINT (Werner verwendet hier auch
ECHO) zur Seiten-Navigation:
Code: Alles auswählen
print '<p>' . (($AktuelleSeite - 1) > 0 ? '<a href="?seite=' . ($AktuelleSeite - 1) . '#content1-aw" onclick="myPage(\'' . ($AktuelleSeite - 1) . '\')">◄ Zurück</a> ' : '') . ' ' .
(($AktuelleSeite + 1) <= $Seitenanzahl ? '<a href="?seite=' . ($AktuelleSeite + 1) . '#content1-aw" onclick="myPage(\'' . ($AktuelleSeite + 1) . '\')">Weiter ►</a>' : '') . '</p>';
Glaube also nicht, dass ich mir das einfach nur
leicht
mache, denn alle diese Zeilen existieren so nicht in Werners Scripten und funktionieren daher dann beim direkten Einbau in Mobirise nicht. Sie funktionieren nur, wenn die Anzeige im obersten Block von Mobirise stattfindet.
Auch bei der von Dir erwähnten
Kommentar-Box ist das so, solange man diese nicht ganz oben - als Headder-Block - in Mobirise verwendet:
https://www.mobirise-tutorials.com/Tuto ... ar-Box.php
... dort habe ich das auch mit diesem JavaScript (von Werner) anpassen müssen:
Code: Alles auswählen
<!-- Reload für Kommentarseiten -->
<script>
function aktion(seite) {
window.location.href = seite;
}
</script>
Beispiel-Zeile im Script
PRINT für die Seiten-Navigation:
Code: Alles auswählen
// Formular anzeigen
print '<form name="Form" action="' . $_SERVER["SCRIPT_NAME"]
. (isset($_GET["seite"]) ? '?seite=' . $_GET["seite"] : '?seite=1')
. '&aktion=aendern#mycomment" method="post">
Der Original-Code (unten) sieht dagegen so aus, hier ist es also nur eine
einfache Änderung vom Anker in die ID des Mobirise-Blocks:
Code: Alles auswählen
// Formular anzeigen
print '<form name="Form" action="' . $_SERVER["SCRIPT_NAME"]
. (isset($_GET["seite"]) ? '?seite=' . $_GET["seite"] : '?seite=1')
. '&aktion=aendern#anker" method="post">
Deswegen habe ich u.a. auch auf meiner
Kommentar-Box Seite einen zusätzlichen Download von diesem Script, indem ich bereits diese Block-ID in "#mycomment" geändert habe.