---
title: "Löschen von Nachrichten"
url: "https://www.typo3.net/d/82050-loeschen-von-nachrichten"
source: "typo3.net"
tags: ["Extensions","Datenbank","Frage","PHP"]
created: "2008-09-23"
last_reply: "2008-09-23"
replies: 1
solved: false
page: 1
pages: 1
lang: "de"
---

# Löschen von Nachrichten

Extensions · 1 Antwort · gestartet 2008-09-23

## Eröffnungsbeitrag

**matchello** · 2008-09-23 · [Beitrag #1](https://www.typo3.net/d/82050-loeschen-von-nachrichten/1)

Hi,

das löschen der Nachrichten ist leider nicht korrekt.

```php
function message_del ($content,$conf) {
   $where = 'hidden = 0 AND DELETED = 0 AND uid = \''.intval($this->piVars["messid"]).'\' AND to_uid = '.$GLOBALS['TSFE']->fe_user->user['uid'].$this->getPidQuery();
   $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('uid','tx_mmforum_pminbox',$where,'','',$limit=1);
   if ($res) {
       $val = Array('deleted' => 1);
       $GLOBALS['TYPO3_DB']->exec_UPDATEquery('tx_mmforum_pminbox',$where,$val);
       $link = $this->pi_getPageLink($GLOBALS["TSFE"]->id,$target='',array($this->prefixId=>array('folder'=>$this->piVars['folder'])));
       $link = $this->getAbsUrl($link);
       header('Location: '.$link);
   }
   else {
       $template = $this->cObj->fileResource($conf['temp']['error_message']);
       $marker['###ERROR###'] = $this->pi_getLL('deleteError');
   }
   $content .= $this->cObj->substituteMarkerArrayCached($template, $marker);
   return $content;
}
```

Eigentlich müsste doch auch hier eine Unterschied nach Folder gemacht werden. Bei inbox.send ist to_uid nicht $GLOBALS['TSFE']->fe_user->user['uid'] sondern, es muss from_uid sein.

Roundtrip:

```php
function message_del ($content,$conf) {
   $where_uid = 'to_uid='.$GLOBALS['TSFE']->fe_user->user['uid'];
   if ($this->piVars['folder'] == 'send'){
      $where_uid = 'from_uid='.$GLOBALS['TSFE']->fe_user->user['uid'];
   }
   $where = 'hidden = 0 AND DELETED = 0 AND uid = \''.intval($this->piVars["messid"]).'\' AND '.$where_uid.$this->getPidQuery();
   $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('uid','tx_mmforum_pminbox',$where,'','',$limit=1);
   if ($res) {
       $val = Array('deleted' => 1);
       $GLOBALS['TYPO3_DB']->exec_UPDATEquery('tx_mmforum_pminbox',$where,$val);
       $link = $this->pi_getPageLink($GLOBALS["TSFE"]->id,$target='',array($this->prefixId=>array('folder'=>$this->piVars['folder'])));
       $link = $this->getAbsUrl($link);
       header('Location: '.$link);
   }
   else {
       $template = $this->cObj->fileResource($conf['temp']['error_message']);
       $marker['###ERROR###'] = $this->pi_getLL('deleteError');
   }
   $content .= $this->cObj->substituteMarkerArrayCached($template, $marker);
   return $content;
}
```

Ich hoffe, ich habe mich jetzt mal nicht vertippt.

Viele Grüße
Marcel

## Antworten

### [#2](https://www.typo3.net/d/82050-loeschen-von-nachrichten/2) · matchello · 2008-09-23

Oje, oje, oje.... Der Fehler zieht sich ja durch die komplette pi3-class.... :(
Also entweder überall eine solche Unterscheidung reinbauen, oder einfach aus den Anfragen "AND to_uid = '.$GLOBALS['TSFE']->fe_user->user['uid']" entfernen...

> **matchello schrieb:**
>
> Hi,
>
> das löschen der Nachrichten ist leider nicht korrekt.
>
> ```php
> ....
> ```
>
> Eigentlich müsste doch auch hier eine Unterschied nach Folder gemacht werden. Bei inbox.send ist to_uid nicht $GLOBALS['TSFE']->fe_user->user['uid'] sondern, es muss from_uid sein.
>
> Roundtrip:
>
> ```php
> ....
> ```
>
> Ich hoffe, ich habe mich jetzt mal nicht vertippt.
>
> Viele Grüße
> Marcel

---

Quelle: „Löschen von Nachrichten“, typo3.net, https://www.typo3.net/d/82050-loeschen-von-nachrichten
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
