Texte in Email und FPDF nutzen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Texte in Email und FPDF nutzen

    Hallo,

    ich habe eine Textvorlage, die in der Email und PDF gleich ist. In der Email muss jedoch immer ein Zeilenumbruch gesetzt werden und im PDF gibt es ja verschiedene Funktionen, jedoch kann ich ja dort nicht die komplette Textvorlage einbinden. Wie kann ich denn am besten den vorhandenen Text von zentraler Stelle einbinden? Ich will ihn ja nicht 2 mal eingeben für Email und PDF.

  • #2
    Hallo,

    Texte kannst du in einer DB oder im XML-Format speichern und dann je nach Einsatzzweck unterschiedlich formatieren. Leider kann ich nichts konkreteres sagen, wenn du keine konkreteren Fragen stellst

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      Hi,

      die Datenquelle ist ja nicht das Problem.

      Angenommen meine Textvorlage sieht so aus:

      Name: {$name}
      Vorname: {$vorname}

      Dann muss ich jeweils "\n" in der Email einfügen

      Name: {$name}."\n"
      Vorname: {$vorname}."\n"

      und im PDF wird eine Funktion Cell genutzt.

      $pdf->Cell(Name: {$name})
      $pdf->Cell(Vorname: $vorname)

      Das Einlesen der Textvorlage würde ja klappen aber die weitere Formatierung nicht.

      Kommentar


      • #4
        PHP-Code:
        $vorlage file(xxx.txt);
        foreach(
        $vorlage as $zeile)
        {
        $email.= $zeile;
        $pdf->Cell($zeile);

        Fertig!

        Kommentar


        • #5
          Hi,

          in der Schleife weiß ich ja dann leider nicht, welchen Platzhalter ich ersetzen muss.

          Ich würde es so machen:

          PHP-Code:
          $vorlage implode('#',file(text.txt)); // # das spätere Trennzeichen

          // alles ersetzen
          $vorlage str_replace('{VORNAME}',$vorname,$vorlage);
          $vorlage str_replace('{NACHNAME}',$nachname,$vorlage);
          usw...

          // Array erzeugen
          $vorlage_neu explode('#',$vorlage);

          // Ausgabe
          foreach($vorlage_neu as $zeile){
              
          $email.= $zeile;
              
          $pdf->Cell($zeile);

          Oder gibt es noch ne bessere Möglichkeit?

          Kommentar


          • #6
            in der Schleife weiß ich ja dann leider nicht, welchen Platzhalter ich ersetzen muss.
            Das ganze war ja auch nur Pseudo-Code zum weiterdenken.

            Oder gibt es noch ne bessere Möglichkeit?
            Mit sicherheit, oder welchen Sinn siehst du darin, einen String in ein Array zu zerlegen und dann wieder zu einem String zusammenzufügen um es letztendlich wieder in ein Array zu zerlegen.

            ersetze file() durch file_get_contents(), darauf wendest du str_replace an und zuletzt führst du explode durch.

            Kommentar


            • #7
              Hi TobiaZ,

              danke für die Tips.
              Hab es jetzt so hier, ud klappt gut :-)

              PHP-Code:
              $vorlage file_get_contents('vorlage.txt');

              ...
              Platzhalter ersetzen

              $vorlage_neu 
              explode("\n",$vorlage);

              foreach(
              $vorlage_neu as $zeile).... 

              Kommentar


              • #8
                Hi,

                eine Frage hätte ich noch:

                In der vorlage gibt es Überschriften. Für die Mail sollten die so aussehen:

                Überschrift:
                =========

                im PDF sollte es fett formatiert werden

                $pdf->setFont('B');
                $pdf->Cell('Überschrift');

                Vielleicht hat da jemand noch einen Tip? Oder ist es besser dann 2 Vorlagen zu verwenden?
                Zuletzt geändert von lx-club; 15.10.2010, 12:53.

                Kommentar


                • #9
                  Aha!? Vielleicht hast du eine Frage?

                  Hier macht niemand deine Arbeit.

                  Woran erkennst du die Überschrift? Dann kannst du doch problemlos ne Fallunterscheidung machen.

                  Kommentar


                  • #10
                    Die Überschrift steht ganz normal in einer Textdatei. Das ist ja das Problem. Ich kann nicht unterscheiden was ist die Überscrift und was ist Text (Ausser ich kennzeichne mir das irgendwo in der Textdatei)

                    Kommentar


                    • #11
                      Zitat von lx-club Beitrag anzeigen
                      Ich kann nicht unterscheiden was ist die Überscrift und was ist Text (Ausser ich kennzeichne mir das irgendwo in der Textdatei)
                      Das wirst du wohl müssen, wenn du sie unterschiedlich formatieren/ausgeben willst.
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        Wenn du es nicht unterscheiden kannst, wie soll es der Parser denn unterscheiden können?

                        Also musst du ma(r/s)kieren.

                        Kommentar

                        Lädt...
                        X