| anpera.net https://anpera.homeip.net/phpbb3/ |
|
| Superuser abfrage des Ye olde mail EMPFÄNGERS https://anpera.homeip.net/phpbb3/viewtopic.php?f=34&t=3556 |
Seite 1 von 1 |
| Autor: | Reyko [ Sa 07 Apr, 2007 09:10 ] |
| Betreff des Beitrags: | Superuser abfrage des Ye olde mail EMPFÄNGERS |
Ich wollte fragen ob mir jemand helfen kann: Ich möchte das, wenn jemand eine Ye olde Mails an einen User mit superuser stufe 2 oder höher, ein Hinweis angezigt wird das für Support Fragen also fragen zum spiel das Forum da ist etc... $this->bbcode_second_pass_code('', 'if ($session[user][superuser]>=1)') <<< der code ist ja nur für die Abfrage des users der schreibt und nicht des empfängers ... was muss ich wie in der Mail.php eintragen damit dieser hinweis kommt? PS: Falls es den therad schon gibt sry aber mir fielen keine passenden suchb egriffe ein >.< |
|
| Autor: | -DoM [ Sa 07 Apr, 2007 13:13 ] |
| Betreff des Beitrags: | |
[php]if ($session[user][superuser] > 1){ [...] } [/php] Ist richtig, also ohne das "=". Aber das bringt dir nichts, da dies die Daten des ausführenden Accounts abfragt. Also ich habe dir mal die betreffende Stelle heraus gesucht: [php] if($_GET[op]=="send"){ if (empty($_POST['petitionid'])) { $sql = "SELECT acctid FROM accounts WHERE login='$_POST[to]'"; $result = db_query($sql); if (db_num_rows($result)>0){ $row1 = db_fetch_assoc($result); $sql = "SELECT count(messageid) AS count FROM mail WHERE msgto='".$row1[acctid]."' AND seen=0"; $result = db_query($sql); $row = db_fetch_assoc($result); if ($row[count]>getsetting("inboxlimit",50)) { output("Die Mailbox dieser Person ist voll! Du kannst ihr keine Nachricht schicken."); }else{ $_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b'); $_POST['body']=str_replace("`n","\n",$_POST['body']); $_POST['body']=str_replace("\r\n","\n",$_POST['body']); $_POST['body']=str_replace("\r","\n",$_POST['body']); $_POST['body']=addslashes(substr(stripslashes($_POST['body']),0,(int)getsetting("mailsizelimit",1024))); $_POST['body'] = closetags($_POST['body'],'`c`i`b'); systemmail($row1['acctid'],$_POST['subject'],$_POST['body'],$session['user']['acctid']); output("Deine Nachricht wurde gesendet!`n"); } }else{ output("Konnte den Empfänger nicht finden. Bitte versuche es nochmal.`n"); } } else { $sql = "SELECT count(messageid) AS count FROM petitionmail WHERE petitionid='$_POST[petitionid]' AND msgto='".$session['user']['acctid']."'"; $row = db_fetch_assoc(db_query($sql)); if ($row['count']==0) { output('Du kannst nur zu deinen eigenen Anfragen etwas schreiben!'); } else { $_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b'); $_POST['body']=str_replace("`n","\n",$_POST['body']); $_POST['body']=str_replace("\r\n","\n",$_POST['body']); $_POST['body']=str_replace("\r","\n",$_POST['body']); $_POST['body']=substr($_POST['body'],0,(int)getsetting("mailsizelimit",1024)); $_POST['body'] = closetags($_POST['body'],'`c`i`b'); petitionmail($_POST['subject'],$_POST['body'],$_POST['petitionid'],$session['user']['acctid']); output("Deine Nachricht wurde gesendet!`n"); } } $_GET['op']=""; } [/php] Ersetze das mal damit: [php] if($_GET[op]=="send"){ if (empty($_POST['petitionid'])) { // Feld superuser hinzugefügt, um Daten verfügbar zu machen.: $sql = "SELECT acctid, superuser FROM accounts WHERE login='$_POST[to]'"; $result = db_query($sql); if (db_num_rows($result)>0){ $row1 = db_fetch_assoc($result); $sql = "SELECT count(messageid) AS count FROM mail WHERE msgto='".$row1[acctid]."' AND seen=0"; $result = db_query($sql); $row = db_fetch_assoc($result); if ($row[count]>getsetting("inboxlimit",50)) { output("Die Mailbox dieser Person ist voll! Du kannst ihr keine Nachricht schicken."); //Zusätzliche Abfrage um herauszufinden, ob der Empfänger ein Superuser Stufe 2 und höher ist: }elseif ($row1['superuser'] > 1){ output('Du kannst Admins nicht anschreiben. Nutze für Support bitte das Forum.'); }else{ $_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b'); $_POST['body']=str_replace("`n","\n",$_POST['body']); $_POST['body']=str_replace("\r\n","\n",$_POST['body']); $_POST['body']=str_replace("\r","\n",$_POST['body']); $_POST['body']=addslashes(substr(stripslashes($_POST['body']),0,(int)getsetting("mailsizelimit",1024))); $_POST['body'] = closetags($_POST['body'],'`c`i`b'); systemmail($row1['acctid'],$_POST['subject'],$_POST['body'],$session['user']['acctid']); output("Deine Nachricht wurde gesendet!`n"); } }else{ output("Konnte den Empfänger nicht finden. Bitte versuche es nochmal.`n"); } } else { $sql = "SELECT count(messageid) AS count FROM petitionmail WHERE petitionid='$_POST[petitionid]' AND msgto='".$session['user']['acctid']."'"; $row = db_fetch_assoc(db_query($sql)); if ($row['count']==0) { output('Du kannst nur zu deinen eigenen Anfragen etwas schreiben!'); } else { $_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b'); $_POST['body']=str_replace("`n","\n",$_POST['body']); $_POST['body']=str_replace("\r\n","\n",$_POST['body']); $_POST['body']=str_replace("\r","\n",$_POST['body']); $_POST['body']=substr($_POST['body'],0,(int)getsetting("mailsizelimit",1024)); $_POST['body'] = closetags($_POST['body'],'`c`i`b'); petitionmail($_POST['subject'],$_POST['body'],$_POST['petitionid'],$session['user']['acctid']); output("Deine Nachricht wurde gesendet!`n"); } } $_GET['op']=""; } [/php] Dies müsste so eingentlich gehen. So aus dem Stehgreif... |
|
| Autor: | Reyko [ Sa 07 Apr, 2007 19:04 ] |
| Betreff des Beitrags: | |
nachdem was ich im code gesehen habe ok fast sie sollen schon schreiben können aber es soll ein hinweis erscheinen :O
PS: Hab ma meine mail php angehangen vllt könnt ihr ja ma guggn |
|
| Autor: | -DoM [ Sa 07 Apr, 2007 21:26 ] |
| Betreff des Beitrags: | |
Dann mache es so: [php] if($_GET[op]=="send"){ if (empty($_POST['petitionid'])) { // Feld superuser hinzugefügt, um Daten verfügbar zu machen.: $sql = "SELECT acctid, superuser FROM accounts WHERE login='$_POST[to]'"; $result = db_query($sql); if (db_num_rows($result)>0){ $row1 = db_fetch_assoc($result); $sql = "SELECT count(messageid) AS count FROM mail WHERE msgto='".$row1[acctid]."' AND seen=0"; $result = db_query($sql); $row = db_fetch_assoc($result); if ($row[count]>getsetting("inboxlimit",50)) { output("Die Mailbox dieser Person ist voll! Du kannst ihr keine Nachricht schicken."); }else{ $_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b'); $_POST['body']=str_replace("`n","\n",$_POST['body']); $_POST['body']=str_replace("\r\n","\n",$_POST['body']); $_POST['body']=str_replace("\r","\n",$_POST['body']); $_POST['body']=addslashes(substr(stripslashes($_POST['body']),0,(int)getsetting("mailsizelimit",1024))); $_POST['body'] = closetags($_POST['body'],'`c`i`b'); systemmail($row1['acctid'],$_POST['subject'],$_POST['body'],$session['user']['acctid']); output("Deine Nachricht wurde gesendet!`n"); //Hier die Änderung für den Hinweis: if ($row1['superuser'] > 1) output('Um Support zu erhalten, nutze bitte unser Forum!!!`n'); } }else{ output("Konnte den Empfänger nicht finden. Bitte versuche es nochmal.`n"); } } else { $sql = "SELECT count(messageid) AS count FROM petitionmail WHERE petitionid='$_POST[petitionid]' AND msgto='".$session['user']['acctid']."'"; $row = db_fetch_assoc(db_query($sql)); if ($row['count']==0) { output('Du kannst nur zu deinen eigenen Anfragen etwas schreiben!'); } else { $_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b'); $_POST['body']=str_replace("`n","\n",$_POST['body']); $_POST['body']=str_replace("\r\n","\n",$_POST['body']); $_POST['body']=str_replace("\r","\n",$_POST['body']); $_POST['body']=substr($_POST['body'],0,(int)getsetting("mailsizelimit",1024)); $_POST['body'] = closetags($_POST['body'],'`c`i`b'); petitionmail($_POST['subject'],$_POST['body'],$_POST['petitionid'],$session['user']['acctid']); output("Deine Nachricht wurde gesendet!`n"); } } $_GET['op']=""; } [/php] |
|
| Autor: | Reyko [ Sa 07 Apr, 2007 21:33 ] |
| Betreff des Beitrags: | |
Meine Mail PHP sieht etwas aus kannst ma guggn pls?? |
|
| Autor: | -DoM [ Sa 07 Apr, 2007 21:35 ] |
| Betreff des Beitrags: | |
Du schaue es dir an, und überlege was dort geschieht. Ich baue dir doch nichts ein....
Das musst du schon selbst. Du siehst ja wie es Anhand der originalen Aussieht und Funktioniert....;-) EDIT: Habe geschaut. Kannst du Problemlos portieren. Aber die mail.php stammt nicht von dir, denn sonst würdest du es dir selbst schrieben...*fg* |
|
| Autor: | Reyko [ So 08 Apr, 2007 08:48 ] |
| Betreff des Beitrags: | |
sie stammt von meinem ordner ;O ich hab die nicht selber geschrieben das stimmt ok danke ich mach das alles ma heute abend vielen dank -DoM
|
|
| Autor: | Janny [ Fr 28 Nov, 2008 23:58 ] |
| Betreff des Beitrags: | Re: Superuser abfrage des Ye olde mail EMPFÄNGERS |
... |
|
| Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |
|