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 ![]() 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 ![]() ![]() |
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/ |