Code in Template einfügen

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Post Reply
mhz
Posts: 564
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Code in Template einfügen

Post by mhz » Mon May 06, 2019 9:26 pm

Hallo zusammen,
ich möchte verschiedene Quizze in meine Seite einfügen, die ich auf der Seite https://felix-riesterer.de/main/seiten/rquiz.html fand. Dazu soll ich "eine zusätzliche JavaScript-Datei einbinden, die nach dem Vorbild von rquiz-uploader.js erstellt wurde, um von einem Besucher erreichte Werte an einen Webserver zu senden."

In einem entsprechend umbenannten Template habe ich den Code aus der beispielhaften rquiz-response.php-Datei, die zur Demonstration beiliegt, in ein die template.htm eingefügt.
Aber leider funktioniert es nicht so einfach, wie ich es mir dachte.

Code: Select all

<?php
// if jQuery4CMSimple is installed, include its jQuery library
if (is_readable($pth['folder']['plugins'].'jquery/jquery.inc.php')) {
    include_once $pth['folder']['plugins'].'jquery/jquery.inc.php';
    include_jQuery();
}
// Plugin FA_XH
if (function_exists('fa_require')) {
    fa_require();
} else {
    die('Das Template "fhs-simple" benötigt das Fa_XH-Plugin.<br>Das Fa_XH-Plugin kann hier heruntergeladen werden: <a href="http://3-magi.net/de/?CMSimple_XH/Fa_XH" target="_blank">Download</a>');
}
// RQUIZ3 von Felix Riesterer
// nach den bereits vorhandenden Aufrufen eingefügt. 

// save submitted data
file_put_contents('./rquizrequest.txt', print_r($_REQUEST, true), FILE_APPEND);

// send response
header('Content-Type: text/plain; charset=utf-8');

// fake slow connection
sleep(1); // wait 4 seconds

// OUTPUT AFTER HEADER() CALL
echo $r;

exit;
?>
<html lang="<?=$sl;?>">
<head>
Was und wie muss es geändert werden, dass es funktioniert?
Ich danke für eure Ideen.
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

cmb
Posts: 13211
Joined: Tue Jun 21, 2011 11:04 am
Location: Mü-Sa, RLP, DE
Contact:

Re: Code in Template einfügen

Post by cmb » Mon May 06, 2019 10:52 pm

mhz wrote:
Mon May 06, 2019 9:26 pm
ich möchte verschiedene Quizze in meine Seite einfügen, die ich auf der Seite https://felix-riesterer.de/main/seiten/rquiz.html fand.
Dazu im <head> des Templates etwa folgendes ergänzen (ungetestet):

Code: Select all

<link href="<?php echo $pth['folder']['template']?>rquiz.css" rel="stylesheet" type="text/css">
<script type='text/javascript' src='<?php echo $pth['folder']['template']?>rquiz.js'></script>
(die Dateien rquiz.css und rquiz.js müssen direkt im Templateordner abgelegt werden; ansonsten müssen die Pfade angepasst werden)
mhz wrote:
Mon May 06, 2019 9:26 pm
Dazu soll ich "eine zusätzliche JavaScript-Datei einbinden, die nach dem Vorbild von rquiz-uploader.js erstellt wurde, um von einem Besucher erreichte Werte an einen Webserver zu senden."

In einem entsprechend umbenannten Template habe ich den Code aus der beispielhaften rquiz-response.php-Datei, die zur Demonstration beiliegt, in ein die template.htm eingefügt.
Aber leider funktioniert es nicht so einfach, wie ich es mir dachte.
Das ist auch wirklich nicht so einfach, denn bereits rquiz-uploader.js muss eben angepasst werden, und rquiz-response.php muss überhaupt erst mit sinnvoller Logik versehen werden (das Beispielskript tut wenig Sinnvolles). Und darüberhinaus sollte rquiz-response.php besser kein separates Skript sein, sondern eher ein ?rquiz-response. Das ganze ruft nach einem kleinen Plugin -- Freiwillige vor! :)
Christoph M. Becker – Plugins for CMSimple_XH

mhz
Posts: 564
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: Code in Template einfügen

Post by mhz » Tue May 07, 2019 4:45 am

Danke für Deine 1. Antwort, Christoph.
Ich habe das mal schnell ausgetestet und es endet in einem fatalen Fehler.
syntax error, unexpected '<', expecting end of file in /home/www/tutor1/templates/cmsimplexh-172-rquiz3/template.htm on line 15
Ich kann das später mal weiter testen und mich mit Deinem Vorschlag der Pfadanpassung befassen.

In der Vorversion zu diesen Quizzen konnte es auch über den NUR Template-Aufruf realisiert werden. Es brauchte kein eigenes Plugin.
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

mhz
Posts: 564
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: Code in Template einfügen

Post by mhz » Tue May 07, 2019 5:28 am

P.S.: Wie ist der Aufruf zu erweitern, wenn das Verzeichnis mit den Dateien rquiz.css und rquiz.js u.a. (auch ein Image-Ordner)
rquiz3 heißen soll und im root-Verzeichnis liegt?
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

Holger
Site Admin
Posts: 3055
Joined: Mon May 19, 2008 7:10 pm
Location: Hessen, Germany
Contact:

Re: Code in Template einfügen

Post by Holger » Tue May 07, 2019 9:17 am

mhz wrote:
Tue May 07, 2019 5:28 am
P.S.: Wie ist der Aufruf zu erweitern, wenn das Verzeichnis mit den Dateien rquiz.css und rquiz.js u.a. (auch ein Image-Ordner)
rquiz3 heißen soll und im root-Verzeichnis liegt?
Das sollte so funktionieren:

Code: Select all

<link href="<?php echo $pth['folder']['base']?>rquiz3/rquiz.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="<?php echo $pth['folder']['base']?>rquiz3/rquiz.js"></script>

mhz
Posts: 564
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: Code in Template einfügen

Post by mhz » Tue May 07, 2019 10:52 am

Danke !!!
Jetzt funktioniert es schon mal im normalen Browser. Das mit dem Smartphone / Tablet werde ich noch testen.
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

Post Reply