[TYPO3-german] Seite mit PHP, HTML, JS einbinden

Simon 3im0n at arcor.de
Sat Oct 12 09:23:12 CEST 2013


Du musst den Code natürlich escapen.  Also alle Anführungszeichen mit Slash
maskieren oder in ' verwandeln.
Am 12.10.2013 01:28 schrieb <csvirtual at gmx.de>:

> Hallo Stephan,
>
> ich hatte Bernds Antwort gesehen, aber konnte das bis eben nicht wirklich
> umsetzen. Habe jetzt jede Zeile meines HTML-Codes mit $content .= '...';
> eingerahmt. Es klappt insofern, dass endlich der externe Code an der
> richtigen Stelle (dort wo der Marker ist)  im Frontend ausgegeben wird.
> Dankeschön an Dich und Bernd für den Hinweis mit dem String.
>
> Einziges Problem ist, dass der JS-Code nicht ausgeführt wird. Dieser steht
> im Body des HTML-Teils und ist nicht mit $content .= '...' eingrahmt (hatte
> ich auch mal versucht). Die Einbindung der JS-Libraries erfolgt im
> head-Teil (eingerahmt).
>
> So schauts aus:
>
> <?php
> function user_datenziehen($content= ' '){
> :
> :
> $content .='<html>';
> $content .='<head>';
> $content .='<script type="text/javascript"
> src="fileadmin/jscript/jquery-1.10.2.min.js"></script>';
> $content .='<link rel="stylesheet" type="text/css"
> href="fileadmin/design.css">';
> $content .='</head>';
> $content .='<body>';
> :
> :
> ?>
>
> <script type="text/javascript">
>         JS-Code hier
> </script>
>
> <?php
> $content .='</body>';
> $content .='</html>';
> return $content;
> }
> ?>
>
>
> Ein letzter Hinweis zum JS-Code wäre super.
>
> Danke & Gruß
> Chris
>
> -----Ursprüngliche Nachricht-----
> Von: typo3-german-bounces at lists.typo3.org [mailto:
> typo3-german-bounces at lists.typo3.org] Im Auftrag von Stephan Schuler
> Gesendet: Freitag, 11. Oktober 2013 21:10
> An: German TYPO3 Userlist
> Betreff: Re: [TYPO3-german] Seite mit PHP, HTML, JS einbinden
>
> Hallo Chris.
>
> Hast du Bernds Kommentar von vor 11 Tagen gelesen?
> > vermutlich erfolgt deine Ausgabe mit 'echo', was nicht TYPO3-Stil ist.
>
> Du machst immer noch den gleichen Fehler: Dein Script produziert die
> Ausgabe per echo oder print_r. Technisch schreibt dein Script seine Ausgabe
> in den PHP-Output-Buffer.
>
> So funktioniert TYPO3 aber nicht. Erst sammelt TYPO3 seinen Output
> vollständig ein einem String (eigentlich in mehreren, aber das spielt jetzt
> keine großartige Rolle). Dadurch wird zu Beispiel ermöglicht, dass ein
> Script auch CSS- oder JS-Dateien im HTML-Header einbinden kann, selbst wenn
> es eigentlich den primären Ausgabebereich der Seite mittig im Body bewohnt.
>
> Richtig wäre -- und das hat dir Bernd geschrieben -- wenn deine Funktion
> den String mit "return" zurückgeben würde.
> Effekt dieser Konfiguration wäre unmittelbar, dass das Script direkt über
> den Browser aufgerufen *keine* Ausgabe erzeugt.
>
> Gruß,
>
>
> Stephan Schuler
> Web-Entwickler
>
> Telefon: +49 (911) 539909 - 0
> E-Mail: Stephan.Schuler at netlogix.de
> Website: media.netlogix.de
>
>
>
> --
> netlogix GmbH & Co. KG
> IT-Services | IT-Training | Media
> Neuwieder Straße 10 | 90411 Nürnberg
> Telefon: +49 (911) 539909 - 0 | Fax: +49 (911) 539909 - 99
> E-Mail: info at netlogix.de | Internet: http://www.netlogix.de
>
> netlogix GmbH & Co. KG ist eingetragen am Amtsgericht Nürnberg (HRA 13338)
> Persönlich haftende Gesellschafterin: netlogix Verwaltungs GmbH (HRB 20634)
> Umsatzsteuer-Identifikationsnummer: DE 233472254
> Geschäftsführer: Stefan Buchta, Matthias Schmidt
>
>
>
> ________________________________________
> Von: typo3-german-bounces at lists.typo3.org [
> typo3-german-bounces at lists.typo3.org]&quot; im Auftrag von &
> quot;csvirtual at gmx.de [csvirtual at gmx.de]
> Gesendet: Freitag, 11. Oktober 2013 16:22
> An: 'German TYPO3 Userlist'
> Betreff: Re: [TYPO3-german] Seite mit PHP, HTML, JS einbinden
>
> Hallo Silke,
>
> ich konnte mich leider dem Problem zwei Wochen nicht annehmen, aber habe
> deine Lösung probiert. Einbinden und Auswählen als Content-Element klappt,
> aber leider ist auf der Seite nichts zu sehen. Ich glaube es liegt daran,
> dass ich nicht den HTML-Code (inkl. JS?)  über $content zurückgebe (wüsste
> nicht wie ich dahin komme).
>
> Wie gesagt, bekomme ich es mit
>
> temp.EINBINDEN = USER_INT
> temp.EINBINDEN.userFunc = user_datenziehen page.includeLibs.test =
> fileadmin/alles.php
>
> angezeigt, nur leider immer oben auf der Seite und nicht dort wo Marker im
> Template steht.
>
> Die Extension DB Integration (wfqbe) ist wohl auch keine Lösung?
>
> Danke nochmals
> VG
> Chris
>
> -----Ursprüngliche Nachricht-----
> Von: typo3-german-bounces at lists.typo3.org
> [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Silke Capo
> Gesendet: Montag, 30. September 2013 10:09
> An: typo3-german at lists.typo3.org
> Betreff: [TYPO3-german] Seite mit PHP, HTML, JS einbinden
>
> Hallo,
>
> ich hatte gerade auch das Problem, ein altes PHP-Skript auf einer Seite
> enbinden zu müssen. Wenn du das ganze als Inhalteselement haben möchtest,
> dann probier doch mal die Extension "tscobj". Du nimmst deinen Code von
> unten:
>
> includeLibs.test = fileadmin/test.php
>
> page = PAGE
> page.20 = USER_INT
> page.20 {
>     userFunc = user_datenziehen
> }
>
> statt dem Page machst du ein lib
>
> lib.daten = USER_INT
> lib.daten {
>     userFunc = user_datenziehen
> }
>
> Dieses lib kannst du dann in der Extension einfach auswählen.
>
> Wichtig ist nur, dass dein PHP-Skript (die aufgerufene function) den
> HTML-Code komplett in der Variablen $content zurückgibt. Der zurückgegebene
> Code wird direkt in die Seite integriert.
>
> Grüßle
> Silke
>
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


More information about the TYPO3-german mailing list