AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Webbroker. PageProducer und transparente HTML-Tags
Thema durchsuchen
Ansicht
Themen-Optionen

Webbroker. PageProducer und transparente HTML-Tags

Ein Thema von Delbor · begonnen am 28. Jun 2016 · letzter Beitrag vom 4. Jul 2016
Antwort Antwort
Seite 2 von 6     12 34     Letzte »    
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 28. Jun 2016, 21:17
Hi Sir Rufo

Zitat:
Bei mir funktiniert das mit dem PageProducer nur dann, wenn ich <#TAG> im Template schreibe, dann wird auch der Event passend gefeuert.
Interessant. Scheint also eine Sache der Optionen zu sein.

Zitat:
Ausgaben wie z.B. />--> sind eher ein Hinweis, dass dein Template schon mal etwas durcheinander ist.
Das sind keine Ausgaben, sondern die HTML-Auskommentierungszeichen. Die brauchte ich eigentlich ausschliesslich bei der Entwicklung. Und da diese noch nicht wirklich abgeschlossen ist, hab ich einge davon stehen lassen (erspart nervende Tipparbeit).


Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#12

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 28. Jun 2016, 22:14
Aha, und die sollen beim Rendern auch tatsächlich angezeigt werden?

Öh, Optionen, öh, PageProducer auf die Form geklatscht, das war es mit den Optionen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 05:57
Hi Sir Rufo
Zitat:
Aha, und die sollen beim Rendern auch tatsächlich angezeigt werden?
Nein, latürnich nicht - aber mir fällt ein, da war/ist ein einzelnes 'Winkeleisen', das tatsächlich angezeigt wird. Und das muss natürlich weg.
Vergessen ging das, weils momentan wichtigeres gibt, als so ein kleines 'Winkeleisen' das unverschämt frech hinter dem Bühnenvorhang hervorlugt.
Aber Danke für den Hinweis!

Zitat:
Öh, Optionen, öh, PageProducer auf die Form geklatscht, das war es mit den Optionen
Hast recht - Optionsmöglichkeiten gibt es zumindest unter den Projectoptionen nicht sehr viele, und ob es unter <Tools/Optionen> überhaupt sowas für HTML gibt, müsste ich erst nacchsehen, bezweifle das aber (könnte aber auch genau umgekehrt sein...).

Aber manchmal hilfte es, ein Problem zu überschlafen dann könnte einem etwa einfallen, das sämtliche neue Actionitems erst mal Enabled sind und somit abgearbeitet werden. Zumindest glaube ich, die Help so in Erinnerung zu haben. Werde ich austesten, wenn ich wirklich wach bin...

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 06:42
Dieses "unwichtige Winkeleisen" sollte eigentlich der Abschluss von einem Kommentar in deiner Html Seite sein <!-- Kommentar --> ist er aber nicht mehr (darum wird das beim Rendern ausgegeben).

Ergo passt etwas an deiner Struktur nicht und es befinden sich Teile darin, die eigentlich auskommentiert werden sein sollten, es aber nicht sind.

Du fragst dich, warum da irgendwas doppelt erscheint und tust so einen Hinweis auf einen Strukturfehler (der alles Mögliche bewirken kann) als unwichtig ab.

Na denn, wenn du bereit bist für einen lösungsorientierten Ansatz dann gib einfach Laut.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 10:34
Hi Sir Rufo
Nachdem ich nun bei den Kommentaren etwas aufgeräumt habe, habe ich auch mal Tests mit der Formatierung des Tagnamens duchgeführt. Dabei öffnete ich die Datei im Explorer.
Das erste Bild zeigt dabei den Quellcode, wie er per <Quellcode anzeigen> angezeigt wird. Das einleitende rote Kommentarzeichen steht so nicht in der Originaldatei, sondern wird offensichtlich durch den falsch formatierten Tagnamen erzeugt (<XXX<!).
Das zweite Jpeg zeigt die Seite, wie sie per Doppelklick im Explorer geöffnet wird, wenn der Tagname mit der abschliessenden Spitzklammer geschrieben wird. Und das dritte Bild zeigt schliesslich das Resultat im Browser.

Zitat:
...das sämtliche neue Actionitems erst mal Enabled sind und somit abgearbeitet werden. Zumindest glaube ich, die Help so in Erinnerung zu haben.
Da hat mir meine Erinnerung einen Streich gespielt.

Gruss
Delbor
Miniaturansicht angehängter Grafiken
tagname-4.jpg   tagname5.jpg   tagname6.jpg  
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.733 Beiträge
 
Delphi 6 Enterprise
 
#16

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 10:58
Also ein Tag für den Page-Producer muss definitiv so aussehen: <#Irgendwas>.
Das ist dann kein HTML-Tag, hat auch nichts mit HTML zu tun, sondern ist nur sowas wie eine "Textmarke" für den PageProducer, wo er irgendwas im Text ersetzen muss/soll. Nur für den Fall, dass das irgendwie noch verwechselt wurde.

Der Page-Producer parst ja denke ich mal das HTML-File, dass er als Vorlage bekommt, und der parser kommt dann schwer durcheinander, wenn da wilde < oder # oder > in Kommentaren oder ausserhalb stehen und produziert seltsame Ergebnisse.

Deswegen wie Sir Rufo sagte: In der HTML-Vorlagen-Datei: Alle Kommentare raus. Nur das minimale was man haben möchte rein, so dass es geht. Dann nach und nach neue Dinge einbauen. Sonst kommt man nur durcheinander und findet vor lauter Tags dem Fehler nicht.

In deinem HTML weiß ich z.B. auch nicht was <#Image/> sein soll. Auch ein Tag für den PageProducer? Soll da der Bildname nur eingesetzt werden, dann vllt. eher: <img <#MyImage>/>. Wobei den Slash brauchst eigentlich auch nur bei XHTML mein ich.
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#17

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 11:38
Nun ja, Kommentare kann man da schon rein machen - wenn man sich die HTML-Struktur nicht zerhaut.
(siehe meine Signatur )

Ich hatte nur keine Lust für ihn die Vorlage zu entlausen

Das mit dem Image würde ich eher so lösen:
  • Im Template:
    <#IMAGE foo>
  • In der Tag-Methode:
    Delphi-Quellcode:
    procedure TFoo.PageProducer1HTMLTag(
      Sender : TObject;
      Tag : TTag;
      const TagString: string;
      TagParams : TStrings;
      var ReplaceText: string );
    begin

      case Tag of
        tgCustom:
          ReplaceText := GetCustomTag( TagString, TagParams );
        tgLink:
          ReplaceText := GetLinkTag( TagParams );
        tgImage:
          ReplaceText := GetImageTag( TagParams );
        tgTable:
          ReplaceText := GetTableTag( TagParams );
        tgImageMap:
          ReplaceText := GetImageMapTag( TagParams );
        tgObject:
          ReplaceText := GetObjectTag( TagParams );
        tgEmbed:
          ReplaceText := GetEmbedTag( TagParams );
      end;

    end;
Der Aufruf der Methode erfolgt für den Tag mit den Werten
  • Tag: tgImage
  • TagString: IMAGE
  • TagParams: foo
Die Dokumentation könnte einen dazu veranlassen zu glauben, dass die Tags für img, table, etc. automatisch dazugefügt werden: Dem ist nicht so, man muss genau das zurückliefern, was man in der HTML-Datei stehen haben möchte.

Für den Tag oben kann amn also z.B. ein <img src="./images/foo.jpg"/> zurückliefern.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (29. Jun 2016 um 11:43 Uhr)
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#18

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 12:26
Hi Jumpie
Woher das Image-Tag genau kommt, weiss ich nicht mehr. Wie schon angedeutet, stammen diese Dateien aus meinen ersten Webbroker-Test; ich denke, dieses Tag hat sich damals "eingeschlichen", als ich versuchte, ein Logo im Header einzufügen.

Mit dem Image-Tag, das Delphi vordefiniert, werde ich wohl nicht viel anfangen können, da ich mehrere Bilder in eine Seite einbinden muss.

Die jetzt unmittelbar bevorstehenden Aufgaben sind: Für jede Seite den selben Hintergrund aber mit angepasstem Inhalt sowie die Bilder laden (Logos, Galeriebilder etc.).
Eine Herausforderung dürfte wohl sein, dass Bilder in den Contentstream geladen werden müssen. Zumindest meiner Erinnerung nach funktonieren die noramelen Bildverweise nicht mehr, wenn das HTML via Pageproducer ausgegeben werden. Aber auch da kann mich meine Erinnerung täuschen.

Auf jeden Fall bleibts erstmal spannend...

Gruss
Delbor

PS: Soeben wollte ich abschicken, da sah ich den neuen Beitrag von Sir Rufo, werde darauf aber in einem neuen Beitrag antworten.
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#19

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 13:07
Hi Sir Rufo
Delphi-Quellcode:
    Im Template:
    <#IMAGE foo>
    In der Tag-Methode:
    
    Delphi-Quellcode:
    procedure TFoo.PageProducer1HTMLTag(
      Sender : TObject;
      Tag : TTag;
      const TagString: string;
      TagParams : TStrings;
      var ReplaceText: string );
    begin

      case Tag of
        tgCustom:
          ReplaceText := GetCustomTag( TagString, TagParams );
        tgLink:
          ReplaceText := GetLinkTag( TagParams );
        tgImage:
          ReplaceText := GetImageTag( TagParams );
        tgTable:
          ReplaceText := GetTableTag( TagParams );
        tgImageMap:
          ReplaceText := GetImageMapTag( TagParams );
        tgObject:
          ReplaceText := GetObjectTag( TagParams );
        tgEmbed:
          ReplaceText := GetEmbedTag( TagParams );
      end;

    end;

Der Aufruf der Methode erfolgt für den Tag mit den Werten

    Tag: tgImage
    TagString: IMAGE
    TagParams: foo
Das ewige if..then.. , wie ichs bislang habe, nervt mich schon llänger. Allerdings habe ich da zurzeit noch ein kleines Verständnisproblem, bzw. die Sache ist noch nicht zu Ende gedacht.
Zum einen sollen die Dateien auf der Festplatte (Später also auch derjenigen des Hosters) gespeichert werden, soweit sie Seiten und Seiteninhalte betreffen; Nur User, Sessions etc sollen in eine DB.
Ziel ist, das ich auf meinem Rechner eine Webseite erstelle, diese und allfällig dazugehörende Dateien (CSS etc) zusammen mit einer String-oder Objectliste hochlade. Das Webmodul lädt dann die Dateien nach Angabe aus der Liste. So sollte die Website beim Hoster eigentlich recht dynamisch erweitert werden können.

Zitat:
Für den Tag oben kann amn also z.B. ein <img src="./images/foo.jpg"/> zurückliefern.
Das heisst also, dass entgegen meiner Erinnerung Bilder auch durch den Pageproducer und die Angabe des Suchpfades ausgegeben werden können.
Aber ich sehe gerade, der obige Case..of-Block weist noch auf eine Reihe anderer Möglichkeiten hin.
Da muss ich mich doch noch kräftig in die Doku vertiefen.
So scheint tgObject darauf hinzuweisen, dass da ein Objekt eingefügt werden soll. Stattdessenkommt da wahrscheinlich nur der vom Objekt geliefert Inhalt rein.

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.733 Beiträge
 
Delphi 6 Enterprise
 
#20

AW: Webbroker. PageProducer und transparente HTML-Tags

  Alt 29. Jun 2016, 13:18
Zumindest meiner Erinnerung nach funktonieren die noramelen Bildverweise nicht mehr, wenn das HTML via Pageproducer ausgegeben werden. Aber auch da kann mich meine Erinnerung täuschen.
Das hängt ja generell von deiner Konstellation ab, wie du alles auf deinem Webserver unterbringst, wie du den IIS konfigurierst usw.

Ich habe noch ein älteres Projekt in der Wartung, mit Delphi-CGI-Exe, wo ich Bilder ganz normal als Tags im HTML habe, die dann automatisch vom Browser nachgeladen werden, wie man das so erwartet. Gleiches gilt auch für die CSS-Dateien. Man muss sich da ggf. Gedanken machen was für Pfade man für die Bilder bzw. CSS angibt (s. Sir Rufos Image-Tag Beispiel), aber das ist sicher einfacher und übersichtlicher, als alle Bilder als Stream da einzubetten. Analog finde ich alle Styles in einer CSS-Datei aufzuheben auch sauberer als sie in Style-Tags im HTML einzubinden.
Ralph
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 6     12 34     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz