[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Wie ein Mailformular einbinden.. - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
S3bast1an
Beiträge: 2
Registriert: 6. Sep 2008, 11:40

Wie ein Mailformular einbinden..

6. Sep 2008, 11:47

Hey,

habe soeben den PHPMailer der dabei ist aktiviert und das angefuegte Beispiel:

Code: Alles auswählen

<?php
$mail = new rex_mailer();
$sql = new rex_sql();

$query  = "SELECT full_name, email, photo FROM employee WHERE id=$id";
$sql->setQuery($query);

for($i = 0; $i < $sql->getRows(); $i++)
{
    // HTML body
    $body  = "Hello <font size=\"4\">" . $sql->getValue("full_name") . "</font>, <p>";
    $body .= "<i>Your</i> personal photograph to this message.<p>";
    $body .= "Sincerely, <br />";
    $body .= "phpmailer List manager";

    // Plain text body (for mail clients that cannot read HTML)
    $text_body  = "Hello " . $sql->getValue("full_name") . ", \n\n";
    $text_body .= "Your personal photograph to this message.\n\n";
    $text_body .= "Sincerely, \n";
    $text_body .= "phpmailer List manager";

    $mail->Body    = $body;
    $mail->AltBody = $text_body;
    $mail->AddAddress($sql->getValue("email"), $sql->getValue("full_name"));
    $mail->AddStringAttachment($sql->getValue("photo"), "YourPhoto.jpg");

    if(!$mail->Send())
        echo "There has been a mail error sending to " . $sql->getValue("email") . "<br>";

    // Clear all addresses and attachments for next loop
    $mail->ClearAddresses();
    $mail->ClearAttachments();
    
    $sql->next();
}

?> 
einfach mal als "01 - Text und/oder Bild [textile]" eingefuegt in eine Seite.

Und was rauskommt ist NUR Schrott ... auf meiner Seite sehe ich:

Code: Alles auswählen


<?php = new abc_mailer();
SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’
ORDER BY abc_bierw_01article_slice.re_article_slice_id = new abc_sql(); = “SELECT full_name, email, photo FROM employee WHERE id=”; SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->setQuery();

for(2 = 0; 2 < SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’
ORDER BY abc_bierw_01article_slice.re_article_slice_id->getRows(); 2++) { // HTML body = “Hello “ . SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->getValue(“full_name”) . “,

“; .= “Your personal photograph to this message.

“; .= “Sincerely, “; .= “phpmailer List manager”; // Plain text body (for mail clients that cannot read HTML) = “Hello “ . SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->getValue(“full_name”) . “,

“; .= “Your personal photograph to this message.

“; .= “Sincerely,
“; .= “phpmailer List manager”;
->Body = ; ->AltBody = ; ->AddAddress(SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->getValue(“email”), SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->getValue(“full_name”)); ->AddStringAttachment(SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->getValue(“photo”), “YourPhoto.jpg”); if(!->Send()) echo “There has been a mail error sending to “ . SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->getValue(“email”) . “
“; // Clear all addresses and attachments for next loop ->ClearAddresses(); ->ClearAttachments(); SELECT abc_bierw_01module.id, abc_bierw_01module.name, abc_bierw_01module.ausgabe, abc_bierw_01module.eingabe, abc_bierw_01article_slice.*, abc_bierw_01article.re_id FROM abc_bierw_01article_slice LEFT JOIN abc_bierw_01module ON abc_bierw_01article_slice.modultyp_id=abc_bierw_01module.id LEFT JOIN abc_bierw_01article ON abc_bierw_01article_slice.article_id=abc_bierw_01article.id WHERE abc_bierw_01article_slice.article_id=‘22’ AND abc_bierw_01article_slice.clang=‘0’ AND abc_bierw_01article.clang=‘0’ ORDER BY abc_bierw_01article_slice.re_article_slice_id->next(); }

?>
mhm ... und nu?

Eigentlich will ich ein Mailformular aller Name, Email, Text - fertig. Vielleicht ein Captcha.

Kriegt man das irgendwie hin oder ist das kompliziert?!

Im Wiki steht so fast nix und in der Doku nur sinnloses zum Thema. :(


Sebastian

gpo
Beiträge: 322
Registriert: 28. Mär 2006, 02:10

6. Sep 2008, 14:36

Es gibt genügend AddOns und Module (wie x-Form oder doform), die das. Kann man bei einer Suche auch nicht übersehen.

S3bast1an
Beiträge: 2
Registriert: 6. Sep 2008, 11:40

6. Sep 2008, 15:24

gpo hat geschrieben:Es gibt genügend AddOns und Module (wie x-Form oder doform), die das. Kann man bei einer Suche auch nicht übersehen.
Mhm,

habe gesucht, aber sowas richtiges fuer Redaxobeginner war nicht dabei.
Insoweit auch ne tolle Antwort. :roll:

also weiss nicht.

Irgendwie ist Redaxo glaub ich nix fuer mich.
Allein schon, dass man zB den TinyMCE nach dem installieren noch als Modul anlegen muss und dann beim Parsen

Code: Alles auswählen

Fatal error: Cannot instantiate non-existent class: rextiny2editor in /kunden/domain.de/pfad_redaxo/redaxo/redaxo/include/classes/class.rex_article.inc.php(250) : eval()'d code on line 7
bekommt ... alles sehr strange.
Warum sind die beiliegenden Sachen (phpmailer, tinymce etc) nicht benutzbar eingebunden?

Die Dokumentation ist auch eher sehr sehr dünn ...

Kopfschüttelnd
Sebastian, der dachte Redaxo waer ein kleines nettes funktionierendes CMS. Wenn ich mir das aber so anseh hat man hinterher mehr Probleme als vorher. Nix wenn man nicht soviel Zeit reinstecken will, dass mans gleich selbstschreiben koennte.

gpo
Beiträge: 322
Registriert: 28. Mär 2006, 02:10

6. Sep 2008, 15:43

Okay, kein Problem - etwas Arbeit solltest Du Dir aber schon machen, wenn Du eine neue Software nutzen möchtest. Tust Du das nicht, wirst Du bei jedem anderen CMS auch Probleme bekommen. Dass zum Beispiel von mir genannte doform-Modul ist absolut ausreichend im Wiki dokumentiert und funktioniert sehr gut. Wenn Dir das zuviel Arbeit ist, dann kannst Du auch nichts erwarten. Ich schlage vor, Du liest Dich in das System mal etwas rein, installierst Dir die Demo so noch nicht geschehen und fängst dann mal an, Dich in die zahlreichen vorliegenden Module etwas einzuarbeiten (bzw. eines auszuwählen - Tipps hast Du ja bekommen). Wenn Du Fragen hast, kannst Du die ja im Forum stellen - oder die Suche benutzen, weil vieles schon einmal als Frage aufgekommen ist.

ans_nick
Beiträge: 12
Registriert: 2. Jul 2008, 11:25

phpmailer

8. Sep 2008, 11:18

Hallo,
ich arbeite seit einiger Zeit mit Redaxo und ich finde es toll - es gibt schnell Erfolgserlebnisse und außerdem macht es einfach Spaß!

Gerade richte ich ein Kontaktformular ein mit do form! - sieht auch schon gut aus, leider kommen keine Mails an, obwohl kein Fehler angezeigt wird.

PHPMailer habe ich aktiviert und eingerichtet.

Ich weiß nun nicht, welche Methode und welchen Mailserver ich verwenden muss: localhost oder meinen smtp-Server (beides geht nicht) - eine Dokumentation dazu, dir da sgenau erklärt, hab ich noch nicht gefunden, auch nicht unter dem Link beim Modul do form!

Kann mir jemand weiterhelfen????
Danke!

Thomas.Skerbis
Beiträge: 1371
Registriert: 4. Aug 2006, 14:06
Wohnort: Rheinberg
Kontaktdaten: Website Twitter

8. Sep 2008, 13:14

Verwendest du mail oder sendmail dürfte localhost der richtige Server sein.

Verwendest du SMTP oder SMTP-AUTH solltest Du Deinen SMTP-Server angeben, es sei denn er ist auf Localhost.
Zuletzt geändert von Thomas.Skerbis am 8. Sep 2008, 14:49, insgesamt 1-mal geändert.

ans_nick
Beiträge: 12
Registriert: 2. Jul 2008, 11:25

8. Sep 2008, 14:10

Vielen dank schon mal für die Antwort!

Ich habe die Einstellungen durchprobiert, aber es kommt kein Mail an, leider.

Könnte es noch an anderen Einstellungen liegen oder an Einstellungen beim Provider? Ich bin bei Hosteurope.de

Merci!

Zurück zu „Allgemeines [R4]“