Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
EMail bei neuen Member - modifiziert
#1
Hallo zusammen,

ich habe das Plugin installiert und es funktioniert auch einwandfrei:
* @version email_admin_new_member.php 2012-01-14
* @category MyBB.Plugins
* @package EmailAdminAboutNewUser
* @subpackage Plugin
* @author Malte Gerth <http://www.malte-gerth.de>
* @copyright Copyright © Malte Gerth. All rights reserved.

Ich habe bei meinen Members nun ein neues Pflichtfeld erstellt bzgl. Registrierung und hätte dies auch gerne in der Mail. Ich bin also in meine Datenbank und habe gesucht wo das liegt. Es ist in der Tabelle: mybb_userfields d.h. in einer anderen Tabelle als auf die der Select vom Script schon gemacht wird: "mybb_users".

Das Feld heisst "fid4" in der Tabelle "mybb_userfields".

Hier der wichtige Teil von dem Orginalscript:
PHP-Code:
function emailAdminAboutNewMember()
{
    global 
$mybb$db$user_info$db2;

    if (
$mybb->settings['emailonreg_onoff'] != "0") {
        
$subject '';
        
$text '';
        
$referrerUserInfo null;
        
        
// query user information
        
$query $db->simple_select(
            
"users",
            
"uid, username, email, regip, regdate, referrer",
            
"uid=" . (int)$user_info['uid'] . ""
        
);
        
$userInfo $db->fetch_array($query);
        
        
// get referrer if exists
        
if (!empty($userInfo['referrer']) && (!= $userInfo['referrer'])) {
            
$query $db->simple_select(
                
"users",
                
"username",
                
"uid=" $userInfo['referrer']
            );
            
$referrerUserInfo $db->fetch_array($query);
        }
        
        
// get the email content
        
$subject $mybb->settings['emailonreg_emailsubject'];
        
$text $mybb->settings['emailonreg_emailtext'];
        
        
// replace placeholders
        // %username %ip %uid %mailadress %date %referrer %bbname %bburl
        
$text str_replace('%username'$userInfo['username'], $text);
        
$text str_replace('%ip'$userInfo['regip'], $text);
        
$text str_replace('%uid'$userInfo['uid'], $text);
        
$text str_replace('%mailadress'$userInfo['email'], $text);
        
$text str_replace('%date'$userInfo['regdate'], $text);
        
$text str_replace('%referrer'$referrerUserInfo['username'], $text);
        
$text str_replace('%bbname'$mybb->settings['bbname'], $text);
        
$text str_replace('%bburl'$mybb->settings['bburl'], $text);
        
        
// send mail
        
my_mail($mybb->settings['emailonreg_email'], $subject$text);
    }


Ich habe mir gedacht gut dann adde ich noch folgendes und alles ist gut:

PHP-Code:
global $mybb$db$user_info$db2

Hier kommt dann der Fehler: "Fatal error: Call to a member function simple_select() on a non-object in /var/www/web1291/html/tisp/inc/plugins/email_admin_new_member.php on line 38"
PHP-Code:
$zertifikat $db2->simple_select("userfields","fid4","*"); 

PHP-Code:
$text str_replace('%zertifikat'$zertifikat$text); 

Jemand eine Idee? Ich hab doch keine Ahnung von Programmierung ;-) Das hat mir auch nicht weiter geholfen: http://docs.mybb.com/Simple_Select.html
Zitieren
#2
Was ist denn $db2?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#3
(09.11.2012, 18:41)StefanT schrieb: Was ist denn $db2?

Keine Ahnung hab ich gemacht weil der simple_select auf die Variable ging und das auch so bei dem bestehenden war:

PHP-Code:
$zertifikat $db2->simple_select("userfields","fid4","*"); 

Vielleicht kein simple_select verwenden und ein normales Select?
Zitieren
#4
Hab es hinbekommen...
Zitieren