Seite 2 von 2

Verfasst: 03.08.2003 11:06
von pf-master
Genau so isses ;) Punkt.

Verfasst: 03.08.2003 11:24
von Acid
Eigentlich sollte es doch kein Problem sein, den Hack dementsprechend umzuschreiben. Die Hauptarbeit is ja scho getan.. einen bestimmten Code dort einzusetzen, wo die Registrierung abgehandelt wird. Dort ersetzt ihr den Code für die PMs dann mit einem oder 2 Queries, um ein Thema zu erstellen. Dabei müssen Einträge in der "topics", "posts" und "posts_text" gemacht werden.

Verfasst: 03.08.2003 11:27
von pf-master
Jo, ich meinte ja nur, wenn sowas schon gibt, brauch ichs nicht zu machen :D

Verfasst: 03.08.2003 11:31
von Angela Goldig
also ich kann es nicht. ich hab das phpbb erst seit mitte märz (vorher war es einige jahre ein ubb <- cgi), beschäftige mich also erst seit mitte märz mit php und bin froh, das ich schon so weit bin, wie ich eben bin. ich kann hacks (fast) ohne probleme einbauen. kann fehler "sehen" (meistens) und hab einige kleinere änderungen auch schon selber gemacht. aber das wars auch schon. vielleicht bin ich in 3 oder 4 monaten soweit, das zu können. aber jetzt noch nicht. :)

wenn der wbb hack als "anleitung" gewünscht wird, ich hab ihn. ;)

Verfasst: 03.08.2003 11:34
von Acid
imho gibt´s sowas noch nicht.

@pf-master
Dann ran an die Arbeit.. :wink: ..wenn´s Probleme gibt, wir helfen dir natürlich.

Verfasst: 05.08.2003 01:48
von dabba
Oh ja! - Das klingt nach nem echt netten Mod!

Hoffe, es findet sich jemand, der da was schönes basteln kann! :D

Dabba

Verfasst: 11.08.2003 21:18
von chris478
Hmmm...also da ich als Profil den Profil/User Control Panel Hack nutz (und das wie der Statistik Hack als Module aufgebaut ist, kann ich da keine Funktionen einfügen), hab ich mir das für die index.php geschrieben. Außerdem hab ich keine Veränderungen im Admin-Panel gemacht, so dass man die Sachen direkt in der Datei ändern muss.

Der Hauptteil des Codes besteht aus saerdnaer Quiz Hack (automatisches Posten der Quizfrage)

Für 2.0.3 getestet:

Code: Alles auswählen

#
# Datenbankänderungen
#
# Ersetze phpbb_ durch den entsprechendes Präfix
#

ALTER TABLE `phpbb_users` ADD `butler` TINYINT( 1 ) DEFAULT '0' NOT NULL ;

#
# [Öffne Index.php]
#

#
# [Finde]
#

$total_posts = get_db_stat('postcount');
$total_users = get_db_stat('usercount');
$newest_userdata = get_db_stat('newestuser');
$newest_user = $newest_userdata['username'];
$newest_uid = $newest_userdata['user_id'];

#
# [Füge danach ein]
#

$sql = "SELECT butler FROM ".USERS_TABLE."
			WHERE user_id = $newest_uid";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$butler = $row['butler'];

if ($butler == 0)
{
		function make_post_butler($subject, $newest_user, $mode, $topic_id = 0, $post_id = 0)
        {
                global $db, $phpbb_root_path, $phpEx, $userdata;

                include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
                include($phpbb_root_path . 'includes/functions_post.'.$phpEx);

                // backup userdata
	        if ( isset($userdata) )
            {
	                $userdata2 = $userdata;
	        }
	        $quiz_data = array();
	        // load quizbot data
                $userdata = get_userdata( 2 );  // statt der 2 die user_id des butlers
	        // a few settings
	        $forum_id = 7;  //die forums-id in dem der thread erstellt werden soll
	        $html_on = 0;
	        $bbcode_on = 1;
	        $smilies_on = 1;
                $attach_sig = 0;
	        $post_data['first_post'] = ( $mode == 'newtopic' ) ? true : false;
	        $post_data['last_post'] = false;
	        $post_data['has_poll'] = false;
	        $post_data['edit_poll'] = false;
                $post_data['topic_quiz'] = ( $mode != 'newtopic' ) ? true : false;
                $post_data['flood_control_off'] = true;
	        $return_message = '';
	        $return_meta = '';
	        $username = '';
	        $poll_title = '';
	        $poll_options = '';
	        $poll_length = '';
	        $bbcode_uid = '';
        	$topic_type = POST_NORMAL;
            $message= "

            *hüstel*

            Sehe ich recht, das ist doch ".$newest_user." 

            Im Namen des gesamten Teams von TotG möchte ich dich... oh pardon, möchte ich Sie hier recht herzlich willkommen heißen, treten Sie näher, sehen Sie sich um und fühlen Sie sich bei uns wohl.


            Habe die Ehre..."; //Die Message

                submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length);
	        if ( $error_msg != '' )
	        {
	                echo $error_msg;
                        return false;
	        }
                if ( $mode != 'editpost' )
            {
		        update_post_stats($mode, $post_data, $forum_id, $topic_id, $post_id, $userdata['user_id']);
        	}
	        if ( isset($userdata2) )
	        {
	                $userdata = $userdata2;
	                unset($userdata2);
	        }
                return true;
        }

        $sql = "UPDATE ".USERS_TABLE."
        	SET	butler = 1
            	WHERE user_id = $newest_uid";
			if( !$db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Failed to update butler", "", __LINE__, __FILE__, $sql);
			}
        $subject = "@ ".$newest_user;  //Subject
        make_post_butler($subject, $newest_user, 'newtopic', &$topic_id);
}

#
# [EoF]
#

Verfasst: 24.08.2003 15:53
von Morchel

Code: Alles auswählen

ALTER TABLE `phpbb_users` ADD `butler` TINYINT( 1 ) DEFAULT '0' NOT NULL ; 
Wie macht ihr das genau ... ich hab da 100 verschiedene Einträge.... was muß ich da genau machen ...

Bei mir schaut die Eingabemaske in SQL so aus ...

[ externes Bild ]

Danke für eure Hilfe ...

cu
Morchel

Verfasst: 24.08.2003 16:36
von Morchel
Ich bekomm da folgende Fehlermeldung:
Failed to update butler

DEBUG MODE

SQL Error : 1054 Unknown column 'butler' in 'field list'

UPDATE phpbb_users SET butler = 1 WHERE user_id = 7

Line : 168
File : /home/www/htdocs/XXXX.de/portal.php
Ich benutze das ezPortal von Smator und meine portal.php Seite schaut so aus :
http://home.arcor.de/morchelspender/portal.txt

Wenn ich das Ganze in die index.php packe dann kommt der gleiche Fehler...
In die SQL datenbank hab ich den Butler auch eingetragen ... ->siehe oben !!

Was kann man da machen ???

cu
Morchel

Verfasst: 24.08.2003 17:56
von Acid
Morchel hat geschrieben:

Code: Alles auswählen

ALTER TABLE `phpbb_users` ADD `butler` TINYINT( 1 ) DEFAULT '0' NOT NULL ; 
Wie macht ihr das genau ...
..führe diesen Query ma mit link:phpmyadmin (unter Punkt 5 wird erklärt wie) aus.