---
title: "cwt community - emailversand bei neuer nachricht"
url: "https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht"
source: "typo3.net"
tags: ["TYPO3","Frontend","E-Mail-Versand","Frage"]
created: "2007-09-28"
last_reply: "2008-03-04"
replies: 21
solved: false
page: 1
pages: 1
lang: "de"
---

# cwt community - emailversand bei neuer nachricht

TYPO3 › Frontend · 21 Antworten · gestartet 2007-09-28

## Eröffnungsbeitrag

**sobi555** · 2007-09-28 · [Beitrag #1](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/1)

Kann man das irgendwie aktivieren, oder muss man das "per hand" einbauen!? Hat schon jemand Erfahrungen damit gemacht, bzw. weiß jemand einen guten Link?

LG - Simon

## Antworten

### [#2](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/2) · sobi555 · 2007-09-29

Bin schon ein Schritt weiter. In der Datei: class.tx_cwtcommunity_pi1.php muss ich vor dem return $content; (ca. 1477) die Mailfunktion einbauen.
Jetzt meine neue Frage, **wie bekomme ich raus, welcher User die Nachricht verschickt?** Und dann, ob der User, an den es geht, ob der Online ist.

LG - Simon

### [#3](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/3) · claudia2 · 2007-09-30

Hallo Simon,

wenn ich mich recht entsinne ging das (nur) über einen Cronjob. Da ich inzwischen auf das mm_forum umgestiegen bin, kann ich aber ad hoc nicht sagen, welche Datei angesprochen werden muss...

grüße
claudia

### [#4](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/4) · claudia2 · 2007-09-30

sorry, hab eben mal nachgeschaut. bei mir gingen die PM's über das chc_forum, dort muss die Datei chc_forum/mailer/mailer.php per Cronjob aufgerufen werden, damit die User eine E-Mail Benachrichtigung bekommen.
claudia

### [#5](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/5) · sobi555 · 2007-10-01

Danke Claudia für deine Nachricht. - Ich habe so die Vermutung, dass ich das wohl selber "einbauen" muss. Wer die Nachricht verschickt und wer sie empfängt, kann ich über die URL auslesen: &action=getviewmessagesnew&recipient_uid=3
Jetzt müsste ich nur noch aus der Tabelle ausfindig machen, wer der User ist, ob er online ist und dann über mail() die Nachricht verschicken? - Oder sieht da jemand ein Problem?

LG - Simon

### [#6](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/6) · sobi555 · 2007-10-01

So geht es:

```php
$empfaenger = $_GET["recipient_uid"];
        $abfrage = "SELECT email FROM fe_users WHERE uid = ".$empfaenger;
        $ergebnis = mysql_query($abfrage);
        while($row = mysql_fetch_object($ergebnis))
    	    {
	          $emailempfaenger = $row->email;
	        }
           mail($emailempfaenger, "Du hast eine neue Nachricht erhalten", "Also auf und lesen!");
```

Das muss in die Funktion: function getViewMessagesNewResult($uid, $recipient_uid) eingebaut werden (ca. Zeile Nr.: 1460). Datei: class.tx_cwtcommunity_pi1.php.

Jetzt intressiert mich allerdings, wie ich die zwei "variablen" Betreff und Text über das BE editieren kann??? Wie muss ich das coden?
LG - Simon

PS: ob der User online / offline ist, habe ich (noch) nicht eingebaut...

### [#7](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/7) · Dario · 2008-03-03

Hallo,

ich bekomme da folgende Fehlermeldung:

```html
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /xxx/xxxxxx/xxxxxx/typo3conf/ext/cwt_community/pi1/class.tx_cwtcommunity_pi1.php on line 1878

Warning: Cannot modify header information - headers already sent by (output started at /xxx/xxxxxx/xxxxxx/typo3conf/ext/cwt_community/pi1/class.tx_cwtcommunity_pi1.php:1878-) in /xxx/xxxxxx/xxxxxx/typo3_src/typo3/sysext/cms/tslib/class.tslib_fe.php on line 2898
```

und die Mail wird auch nicht rausgeschickt?!!?
Wo ist der Fehler?

Grüße

Dario

### [#8](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/8) · sobi555 · 2008-03-03

Hi Dario,
nachdem du ja die Datei modifiziert hast, poste doch mal bitte den Code um die Zeile rum... (Nur die erste Fehlermeldung, die zweite verschwindet, wenn die erste weg ist)
LG - Simon

### [#9](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/9) · Dario · 2008-03-03

Hallo Simon,

hier kommt der Code

```php
function getViewMessagesNewResult($uid, $recipient_uid)
    {
        // Init Vars
        $action = "getviewmessagesnewresult";
        $content = "";
        $cObj = $this -> cObj; //Holds a typo content object
        $templateCode = null; //Hold the template source code.
        $conf["subpartMarker"] = "VIEW_MESSAGES_NEW_RESULT"; //Holds a subpart marker.
        $subSub_1 = "ADDITIONAL";

        // Get the html source between subpart markers from template file
        $templateCode = $cObj -> getSubpart($this -> orig_templateCode, "###" . $conf["subpartMarker"] . "###");

		$empfaenger = $_GET["recipient_uid"];
        $abfrage = "SELECT email FROM fe_users WHERE uid = ".$empfaenger;
        $ergebnis = mysql_query($abfrage);
        while($row = mysql_fetch_object($ergebnis))
            {
                  $emailempfaenger = $row->email;
                }
           mail($emailempfaenger, "Sie haben eine neue Nachricht erhalten", "Also auf und lesen!");
		
        /*
        * HANDLE ADDITIONAL
        */
        // Init subpart content
        $subpartContent = null;
        // Get link to messages
        $linkToMessages = $this -> pi_getPageLink($GLOBALS['TSFE']->id, "", array("action" => "getviewmessages", "uid" => $uid));
```

### [#10](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/10) · sobi555 · 2008-03-03

Probier mal, den einzfügenden Code ganz ans Ende der Funktion zu stellen. Also "$empfaenger = $_GET["recipient_uid"];" kommt nach "$content = $templateCode;"
Und Erfolg gehabt? (Wenn nicht, poste mal die ganze Funktion und markier mit dir "Felerzeile")
LG

### [#11](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/11) · Dario · 2008-03-03

Kein Fehlermeldung aber auch keine E-Mail.

LG

Dario

### [#12](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/12) · sobi555 · 2008-03-03

Dann füge mal vor die Zeile Mail(...); die Zeile "echo $row->email;" ein. Wenn er dort die eMailadressen auflistet, dann ersetzte mal die Zeile durch "echo $emailempfaenger;" - was passiert dann?

### [#13](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/13) · Dario · 2008-03-03

NICHTS,

keine Auflistung, kein Fehlermeldung, keine E-Mail

#angry#  #angry#  #angry#  #angry#

Grüße

Dario

### [#14](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/14) · sobi555 · 2008-03-03

Okay... und mit

```php
echo $empfaenger;
```

? (da müsste er dir ganz oben rechts eine Zahl hinschreiben, drunter eine Fehlermeldung)

### [#15](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/15) · Dario · 2008-03-03

Neee,

macht er nicht.

"Die Nachricht wurde gesendet.."

Keine weitere Meldungen oder Fehler

### [#16](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/16) · sobi555 · 2008-03-03

Du hast noch nicht viel mit PHP gemacht, oder? Mir fällt gerade auf (und ein) dass du wahrscheinlich das "return" vor der mail-funktion hast? (ansonsten müssen wir das mal per Mail weiterführen, da ich mir am leichtesten tu, wenn ich die "Dinge" vor mir habe und ggf. selber testen kann...

LG - Simon
Anbei noch mal die Funktion:

```php
    function getViewMessagesNewResult($uid, $recipient_uid)
    {
        // Init Vars
        $action = "getviewmessagesnewresult";
        $content = "";
        $cObj = $this -> cObj; //Holds a typo content object
        $templateCode = null; //Hold the template source code.
        $conf["subpartMarker"] = "VIEW_MESSAGES_NEW_RESULT"; //Holds a subpart marker.
        $subSub_1 = "ADDITIONAL";

        // Get the html source between subpart markers from template file
        $templateCode = $cObj -> getSubpart($this -> orig_templateCode, "###" . $conf["subpartMarker"] . "###");

        /*
        * HANDLE ADDITIONAL
        */
        // Init subpart content
        $subpartContent = null;
        // Get link to messages
        $linkToMessages = $this -> pi_getPageLink($GLOBALS['TSFE']->id, "", array("action" => "getviewmessages", "uid" => $uid));
        // Create Marker Array
        $markerArray = array();
        $markerArray["###LINK_TO_MESSAGES###"] = $cObj -> stdWrap($linkToMessages, "");
				$markerArray["###SENT_MSG###"] = $cObj->stdWrap(htmlspecialchars($this->pi_getLL('CWT_MESSAGES_SENT')), "");  # mher
 				$markerArray["###BACK###"] = $cObj->stdWrap(htmlspecialchars($this->pi_getLL('CWT_MESSAGES_BACK')), "");  # mher
        // Substitute the markers in the given sub sub part.
        $subpartContent .= $cObj -> substituteMarkerArray($cObj -> getSubpart($templateCode, "###" . $subSub_1 . "###"), $markerArray);
        // Substitute the template code with the given subpartcontent.
        $templateCode = $this -> cObj -> substituteSubpart($templateCode, $subSub_1, $subpartContent);
        // Return the generated content

        $content = $templateCode;
        ###marker - email###
        $empfaenger = $_GET["recipient_uid"];
        $abfrage = "SELECT email, gender, first_name, last_name FROM fe_users WHERE uid = ".$empfaenger;
        $ergebnis = mysql_query($abfrage);
        while($row = mysql_fetch_object($ergebnis))
    	    {
	          $emailempfaenger = $row->email;
            $geschlecht = $row->gender;
            $vorname = $row->first_name;
            $nachname = $row->last_name;
	        }
          if($geschlecht == "0")
          {
          $anrede = "Lieber ";
          }
          else
          {
          $anrede = "Liebe ";
          }
          #echo $empfaenger;
          mail($emailempfaenger, "Eine neue Nachricht", $anrede.$vorname."\nDu hast eine neue Nachricht erhalten.")

        return $content;
    }
```

### [#17](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/17) · Dario · 2008-03-03

Neee, daran liegt es nicht!

das "return" habe ich schon an richtiger Stelle.

Grüße

Dario

### [#18](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/18) · sobi555 · 2008-03-03

poste doch bitte mal deine funktion!

### [#19](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/19) · Dario · 2008-03-03

```php
    function getViewMessagesNewResult($uid, $recipient_uid)
    {
        // Init Vars
        $action = "getviewmessagesnewresult";
        $content = "";
        $cObj = $this -> cObj; //Holds a typo content object
        $templateCode = null; //Hold the template source code.
        $conf["subpartMarker"] = "VIEW_MESSAGES_NEW_RESULT"; //Holds a subpart marker.
        $subSub_1 = "ADDITIONAL";

        // Get the html source between subpart markers from template file
        $templateCode = $cObj -> getSubpart($this -> orig_templateCode, "###" . $conf["subpartMarker"] . "###");

		        /*
        * HANDLE ADDITIONAL
        */
        // Init subpart content
        $subpartContent = null;
        // Get link to messages
        $linkToMessages = $this -> pi_getPageLink($GLOBALS['TSFE']->id, "", array("action" => "getviewmessages", "uid" => $uid));
        // Create Marker Array
        $markerArray = array();
        $markerArray["###LINK_TO_MESSAGES###"] = $cObj -> stdWrap($linkToMessages, "");
		$markerArray["###SENT_MSG###"] = $cObj->stdWrap(htmlspecialchars($this->pi_getLL('CWT_MESSAGES_SENT')), "");  # mher
 		$markerArray["###BACK###"] = $cObj->stdWrap(htmlspecialchars($this->pi_getLL('CWT_MESSAGES_BACK')), "");  # mher
        // Substitute the markers in the given sub sub part.
        $subpartContent .= $cObj -> substituteMarkerArray($cObj -> getSubpart($templateCode, "###" . $subSub_1 . "###"), $markerArray);
        // Substitute the template code with the given subpartcontent.
        $templateCode = $this -> cObj -> substituteSubpart($templateCode, $subSub_1, $subpartContent);
        // Return the generated content
        $content = $templateCode;
		
		// E-Mail Benachrichtigung
		
		$empfaenger = $_GET["recipient_uid"];
        $abfrage = "SELECT email FROM fe_users WHERE uid = ".$empfaenger;
        $ergebnis = mysql_query($abfrage);
        while($row = mysql_fetch_object($ergebnis)) !!! DAS IST FEHLERZEILE !!!
            {
                  $emailempfaenger = $row->email;
                }
		// echo $row->email;
           mail($emailempfaenger, "Sie haben eine neue Nachricht erhalten", "Also auf und lesen!");
		   
		return $content;
	
   }
```

### [#20](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/20) · sobi555 · 2008-03-03

Uff... also jetzt bin ich echt überfragt. Bei mir läuft es so wie du es gepostet hast. Versuche folgendes, dass du die mail() Zeile wie folgt umstellst:
 mail("deine@emai.de", "Eine neue Nachricht", "text");
Setze da mal deine richtige Mail rein und schau ob du eine eMail erhälst... Der Code wird bei mir ausgeührt, bei dir scheinbar nicht. Also von hier aus kann ich dir nicht mehr viel helfen. Also entweder liegen alle Mails im Spam oder was weiß ich! :)

LG - Simon

### [#21](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/21) · Dario · 2008-03-04

Vielen lieben Dank für Deine Mühe,

ich melde mich hier wenn ich denn Fehler gefunden habe.

Grüße

Dario

### [#22](https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht/22) · sobi555 · 2008-03-04

Ich weiß nicht wie deine Seite aussieht, aber eine Vermutung ist, dass evtl der "echobefehl" den Text "weiß auf weiß" ausgibt... im Quelltext nachschauen. Und ansonsten mit einfachen "echobefehlen" ausloten bis wo das Script läuft, ob es überhaupt durchläuft... wie auch immer! :)
Alternativ kann ich dir noch meine komplette Datei schicken... Aber jetzt geh ich erstmal schlafen! :)
LG - Simon

---

Quelle: „cwt community - emailversand bei neuer nachricht“, typo3.net, https://www.typo3.net/d/68738-cwt-community-emailversand-bei-neuer-nachricht
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
