| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

14-10-2010, 10:14
|
|
lx-club
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 825
|
|
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.
|

14-10-2010, 11:48
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
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
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

14-10-2010, 17:15
|
|
lx-club
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 825
|
|
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.
|

14-10-2010, 20:29
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
PHP-Code:
$vorlage = file(xxx.txt);
foreach($vorlage as $zeile)
{
$email.= $zeile;
$pdf->Cell($zeile);
}
Fertig!
|

15-10-2010, 10:36
|
|
lx-club
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 825
|
|
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?
|

15-10-2010, 10:52
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Zitat:
|
in der Schleife weiß ich ja dann leider nicht, welchen Platzhalter ich ersetzen muss.
|
Das ganze war ja auch nur Pseudo-Code zum weiterdenken.
Zitat:
|
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.
|

15-10-2010, 11:19
|
|
lx-club
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 825
|
|
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)....
|

15-10-2010, 12:49
|
|
lx-club
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 825
|
|
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?
Geändert von lx-club (15-10-2010 um 12:53 Uhr)
|

15-10-2010, 12:52
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Aha!? Vielleicht hast du eine Frage?
Hier macht niemand deine Arbeit.
Woran erkennst du die Überschrift? Dann kannst du doch problemlos ne Fallunterscheidung machen.
|

15-10-2010, 14:35
|
|
lx-club
Registrierter Benutzer
|
|
Registriert seit: Nov 2003
Beiträge: 825
|
|
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)
|

15-10-2010, 14:38
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Zitat:
Zitat von lx-club
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.
|

15-10-2010, 14:55
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Wenn du es nicht unterscheiden kannst, wie soll es der Parser denn unterscheiden können?
Also musst du ma(r/s)kieren.
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|