Quiz Hack

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
cyberalfa
Mitglied
Beiträge: 84
Registriert: 12.04.2001 02:00
Wohnort: Ostfildern (bei Stuttgart)
Kontaktdaten:

Beitrag von cyberalfa »

So, hab den Quiz_MOD jetzt auch mal eingebaut.

1. Auf anhieb hat´s nicht geklappt, konnte die install_quiz_hack.php nicht benutzen um die Datenbank zu erweitern.
Folgende Fehlermeldung:
Fatal error: Call to undefined function: include_attach_lang() in /is/htdocs/12751/www.offensif.de/forum/includes/functions.php on line 239
2. Als ich nach dem Einbau einen neuen User registriert habe, hatte ich folgende Meldung :
Failed sending email

DEBUG MODE

Line : 204
File : /is/htdocs/12751/www.offensif.de/forum/includes/emailer.php
Als ich die MOD-Änderungen aus der emailer.php wieder raus genommen habe, ging´s wieder.

3. Im Quiz-Konfig.-Menü kann ich nicht das aktuelle Jahr (2002) auswählen!?
Standardmässig stand 1970 drin und die Auswahl beschränkte sich
auf die folgenden vier Jahre.
Als ich spasshalber mal 1974 angewählt habe und die Einstellung gespeichert waren,
konnte ich beim nächsten Aufruf der Konfiguration die Jahre 1972-1976 auswählen.

Noch was, jedesmal, wenn ich das Jahr ändere und danach wieder ins
Konfig.-Menü gehe, hat sich die Stunde um eins nach vorn gestellt.

4. Quiz-Bot und- Admin-Feld nach Speichern im Konfig.-Menü leer!?

5. Wie genau soll das nachher aussehen?
#
#-----[ FIND ]------------------------------------------
#
$sql = ( $mode != "editpost" ) ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote)" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type, topic_vote = $topic_vote WHERE topic_id = $topic_id";
#
#-----[ IN-LINE, FIND ]------------------------------------------
#
topic_vote
#
#-----[ IN-LINE, AFTER, ADD ]------------------------------------------
#
$quiz_sql1
#
#-----[ IN-LINE, FIND ]------------------------------------------
#
$topic_vote
#
#-----[ IN-LINE, AFTER, ADD ]------------------------------------------
#
$quiz_sql2

Hab die Version 0.1.1 am Laufen/phpbb 2.0.2

Wenn mir noch mehr auffällt, poste ich es hier. [/code]
cyberalfa
_________________________________________________
Signaturen dürfen maximal 3 Zeilen lang sein
Bommerang
Mitglied
Beiträge: 110
Registriert: 18.06.2002 18:43

Beitrag von Bommerang »

Hallo,


Ich habe es jetzt mehrfach versucht aber bekomme immer wieder Fehlermeldungen jeglicher Art warum keine Ahnung habe mein Forum jetzt erstmal so wieder raufgespielt wie es war mal sehen evtl. hat jemmand da Lösungen barat.
Erwinchen666
Mitglied
Beiträge: 216
Registriert: 12.11.2001 01:00

Beitrag von Erwinchen666 »

Solche Problemmeldungen sind nicht, äh, wie drücke ich das jetzt mal euphemistisch aus, sehr gehaltvoll. :roll:
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

cyberalfa hat geschrieben:1. Auf anhieb hat´s nicht geklappt, konnte die install_quiz_hack.php nicht benutzen um die Datenbank zu erweitern.
Folgende Fehlermeldung:
Fatal error: Call to undefined function: include_attach_lang() in /is/htdocs/12751/www.offensif.de/forum/includes/functions.php on line 239
sieht so aus als ob du den attachment hack installiert hast... anscheinend fügt der ein zusätzliches include in der common.php und das dieses dann in der functions nicht da ist erklärt sich ja dann von selbst...
cyberalfa hat geschrieben:2. Als ich nach dem Einbau einen neuen User registriert habe, hatte ich folgende Meldung :
Failed sending email

DEBUG MODE

Line : 204
File : /is/htdocs/12751/www.offensif.de/forum/includes/emailer.php
Als ich die MOD-Änderungen aus der emailer.php wieder raus genommen habe, ging´s wieder.
hast du den code in der emailer.php auch davor und nicht danach eingefügt?
cyberalfa hat geschrieben: 3. Im Quiz-Konfig.-Menü kann ich nicht das aktuelle Jahr (2002) auswählen!?
Standardmässig stand 1970 drin und die Auswahl beschränkte sich
auf die folgenden vier Jahre.
Als ich spasshalber mal 1974 angewählt habe und die Einstellung gespeichert waren,
konnte ich beim nächsten Aufruf der Konfiguration die Jahre 1972-1976 auswählen.

Noch was, jedesmal, wenn ich das Jahr ändere und danach wieder ins
Konfig.-Menü gehe, hat sich die Stunde um eins nach vorn gestellt.
das kommt daher das du die install nicht benutzt hast...
cyberalfa hat geschrieben:4. Quiz-Bot und- Admin-Feld nach Speichern im Konfig.-Menü leer!?
muss ich mal ausprobieren...
cyberalfa hat geschrieben:5. Wie genau soll das nachher aussehen?
#
#-----[ FIND ]------------------------------------------
#
$sql = ( $mode != "editpost" ) ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote)" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type, topic_vote = $topic_vote WHERE topic_id = $topic_id";
#
#-----[ IN-LINE, FIND ]------------------------------------------
#
topic_vote
#
#-----[ IN-LINE, AFTER, ADD ]------------------------------------------
#
$quiz_sql1
#
#-----[ IN-LINE, FIND ]------------------------------------------
#
$topic_vote
#
#-----[ IN-LINE, AFTER, ADD ]------------------------------------------
#
$quiz_sql2
so:
$sql = ( $mode != "editpost" ) ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote $quiz_sql1) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote $quiz_sql2)" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type, topic_vote = $topic_vote WHERE topic_id = $topic_id";
ich ändere am besten die anleitung noch ein bischen, das hier ist schon verwirrent... ;-)

ah
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

Erwinchen666 hat geschrieben:Könntest Du die Frage umformulieren, bzw ein bisschen weiter ausholen?
ich meine damit den roten und den grünen mod button siehe quiz faq...
bisher kann man damit den bereits als richtig markierten post wieder demarkiern... ebenfalls kann man post von usern die die antwort z.b. nicht in dem antwort feld reingeschrieben haben oder rechtschreib fehler gemacht haben als richtig markieren.

ach ja da is mir noch was eingefallen... wenn man die antwort eingeben muss kann man auf reguläre ausdrücke verwenden wobei man einen \ vor jedes zeichen das ein regulärer ausdruck sein soll gesetzt werden muss.... z.b. frage: wie lange ist ein 30 cm lineal? antwort: 30\( \)\*cm wobei man dann 30cm, 30 cm oder 30 cm usw. schreiben...

ah
Erwinchen666
Mitglied
Beiträge: 216
Registriert: 12.11.2001 01:00

Beitrag von Erwinchen666 »

saerdnaer hat geschrieben: ich meine damit den roten und den grünen mod button siehe quiz faq...
bisher kann man damit den bereits als richtig markierten post wieder demarkiern... ebenfalls kann man post von usern die die antwort z.b. nicht in dem antwort feld reingeschrieben haben oder rechtschreib fehler gemacht haben als richtig markieren.
Könnte man das nicht auch noch im Nachhinein, also wenn ein nächstes Quiz läuft, immer noch machen?
SQRT
Mitglied
Beiträge: 452
Registriert: 17.05.2002 15:10
Wohnort: Köln
Kontaktdaten:

Beitrag von SQRT »

Wie kann ich die Datenbank manuell uppen???
Ich bekomme immre die Fehlermeldung, dass ich verbannt wurde aus dem Forum! :roll:
wenn es wenigstens wahr wäre :D :D

Ich hab auch das Problem mit dem Jahr 1970 weil ich ja die install_quiz_hack.php nicht ausführen kann.......

NACHTRAG:
Hab die Datenbank manuell eingefügt !!!
Benutzeravatar
cyberalfa
Mitglied
Beiträge: 84
Registriert: 12.04.2001 02:00
Wohnort: Ostfildern (bei Stuttgart)
Kontaktdaten:

Beitrag von cyberalfa »

Hi.

Also, ja, ich hab den Attachment_MOD eingebaut. Was kann ich tun um trotzdem die install_quiz_hack.php zu benutzen oder anders gefragt,
was mus ich in der DB ändern, das es läuft, wie es soll?

Hab´s von "Hand" mit phpMyadmin gemacht :

Code: Alles auswählen

CREATE TABLE phpbb_quiz (
   quiz_id mediumint(8) unsigned DEFAULT '0' NOT NULL auto_increment,
   question text NOT NULL,
   answer varchar(100) NOT NULL,
   answer2 varchar(100) NOT NULL,
   answer3 varchar(100) NOT NULL,
   answer4 varchar(100) NOT NULL,
   quiz_points tinyint(2) DEFAULT '1' NOT NULL,
   quiz_type tinyint(1) DEFAULT '0' NOT NULL,
   quiz_status tinyint(1) DEFAULT '0' NOT NULL,
   quiz_from_user_id mediumint(8) DEFAULT '0' NOT NULL,
   quiz_topic_id mediumint(8) unsigned DEFAULT '0' NOT NULL,
   quiz_bot_post_id mediumint(8) unsigned DEFAULT '0' NOT NULL,
   answered_by_user_id mediumint(8) DEFAULT '0' NOT NULL,
   PRIMARY KEY (quiz_id),
   KEY quiz_status (quiz_status),
   KEY quiz_topic_id (quiz_topic_id),
   KEY user_id (quiz_from_user_id)
);
CREATE TABLE phpbb_quiz_config (
   config_name varchar(255) NOT NULL,
   config_value text NOT NULL,
   PRIMARY KEY (config_name)
);
INSERT INTO phpbb_quiz_config VALUES ('quizbot_id', '2'),
('forum_id', '1'),
('next_quiz', '" . ( time() - 3600 ) . "'),
('next_quiz_step', '1'),
('next_quiz_step_mode', '1'),
('disable', '1'),
('subject', 'Quiz Frage #{NUM} ...'),
('message', 'Und hier die neue Quiz-Frage:\r\n{QUIZ}'),
('subject2', 'Quiz beantwortet'),
('message2', 'Die Quiz-Frage wurde von [i]{USERNAME}[/i] richtig beantwortet.\r\nDas Quiz wurde beendet.'),
('subject3', 'Fehler'),
('message3', 'Aus technischen Gründen wurde die Antwort von [i]{USERNAME}[/i] irrtümlich als richtig markiert. Wir bitten dies zu entschuldigen.\r\nDas Quiz wird nicht wiedereröffnet und bleibt beendet. \r\n'),
('next_quiz_number', '1'),
('quiz_points_disable', '0'),
('banned_users', ''),
('banned_groups', ''),
('admin_user_id', '2'),
('allow_admin_in_quiz', '0'),
('allow_mod_in_quiz', '0'),
('allow_quiz_from_user_in_quiz', '0'),
('html', '1'),
('bbcode', '1'),
('smilies', '1'),
('imported_files', ''),
('last_start_time', '0'),
('version', '0.1.0');
ALTER TABLE phpbb_users ADD quiz_points MEDIUMINT(8) UNSIGNED DEFAULT '0' NOT NULL;
ALTER TABLE phpbb_topics ADD topic_quiz MEDIUMINT(8) DEFAULT '0' NOT NULL;
ALTER TABLE phpbb_posts_text ADD quiz_answer VARCHAR(100) NOT NULL;
Falsch?


zur emailer.php :

Code: Alles auswählen

    $Id: emailer.php,v 1.15.2.3 2002/05/20 00:21:38 psotfx Exp $

***************************************************************************/

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/
// BEGIN Quiz Hack
if ( defined('EMAILER_INCLUDED') )
{
	return;
}
define('EMAILER_INCLUDED', true);
// END Quiz Hack
//
// The emailer class has support for attaching files, that isn't implemented
// in the 2.0 release but we can probable find some way of using it in a future
// release
//
class emailer
{
schon korrekt, oder ? :D


zur functions_post.php :

Code: Alles auswählen

$sql = ( $mode != "editpost" ) ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote $quiz_sql1) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote $quiz_sql2)" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type, topic_vote = $topic_vote WHERE topic_id = $topic_id"; 
schön, dann hab ich´s auch richtig verstanden.

was neues :

Beim Versuch eine Frage manuell zu stellen, bekomme ich folgende Meldung :

Error in posting

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near ' 1032348077, 9, 0, 0, 0 , 1)' at line 1

INSERT INTO phpbb_topics (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote , topic_quiz) VALUES ('Quiz Frage #1 ...', , 1032348077, 9, 0, 0, 0 , 1)

Line : 266
File : /is/htdocs/12751/www.offensif.de/forum/includes/functions_post.php
Die Entsprechenden Zeilen der functions_post.php :

Code: Alles auswählen

		// BEGINN Quiz Hack
		$quiz_sql1 = !empty($post_data['topic_quiz']) ? ', topic_quiz' : '';
		$quiz_sql2 = !empty($post_data['topic_quiz']) ? ', 1' : '';
		// END Quiz Hack
		$sql  = ( $mode != "editpost" ) ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote $quiz_sql1) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote $quiz_sql2)" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type, topic_vote = $topic_vote WHERE topic_id = $topic_id";
// ADDED $quiz_sql1 AND $quiz_sql2 BY Quiz Hack
		if ( !$db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}

		if ( $mode == 'newtopic' )
		{
			$topic_id = $db->sql_nextid();
		}
	}

	$edited_sql = ( $mode == 'editpost' && !$post_data['last_post'] && $post_data['poster_post'] ) ? ", post_edit_time = $current_time, post_edit_count = post_edit_count + 1 " : "";
	$sql = ( $mode != "editpost" ) ? "INSERT INTO " . POSTS_TABLE . " (topic_id, forum_id, poster_id, post_username, post_time, poster_ip, enable_bbcode, enable_html, enable_smilies, enable_sig) VALUES ($topic_id, $forum_id, " . $userdata['user_id'] . ", '$post_username', $current_time, '$user_ip', $bbcode_on, $html_on, $smilies_on, $attach_sig)" : "UPDATE " . POSTS_TABLE . " SET enable_bbcode = $bbcode_on, enable_html = $html_on, enable_smilies = $smilies_on, enable_sig = $attach_sig" . $edited_sql . " WHERE post_id = $post_id";
	if ( !$db->sql_query($sql, BEGIN_TRANSACTION) )
	{
		message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
	}

	if ( $mode != 'editpost' )
	{
		$post_id = $db->sql_nextid();
	}
	// BEGINN Quiz Hack
	$quiz_sql1 = !empty($post_data['quiz_answer']) ? ', quiz_answer' : '';
	$quiz_sql2 = !empty($post_data['quiz_answer']) ? ( ", '" . $post_data['quiz_answer'] . "'" ) : '';
	// END Quiz Hack
	$sql = ( $mode != 'editpost' ) ? "INSERT INTO " . POSTS_TEXT_TABLE . " (post_id, post_subject, bbcode_uid, post_text, $quiz_sql1) VALUES ($post_id, '$post_subject', '$bbcode_uid', '$post_message', '$quiz_sql2')" : "UPDATE " . POSTS_TEXT_TABLE . " SET post_text = '$post_message',  bbcode_uid = '$bbcode_uid', post_subject = '$post_subject' WHERE post_id = $post_id";
// ADDED $quiz_sql1 AND $quiz_sql2 BY Quiz Hack
cyberalfa
_________________________________________________
Signaturen dürfen maximal 3 Zeilen lang sein
Benutzeravatar
K
Mitglied
Beiträge: 49
Registriert: 11.12.2001 01:00
Kontaktdaten:

Beitrag von K »

yo :D

... ich hab auch noch eine kleine Frage..

gibt's vieleicht 'ne möglichkeit die Frage als Betreff zu benutzen?

ich hab's mit {QUESTION} probiert, aber das hat leider nicht geklappt :-? .
Ist das irgendwie anders machbar?


grussK
-.-
Benutzeravatar
saerdnaer
Ehemaliges Teammitglied
Beiträge: 4268
Registriert: 21.04.2001 02:00

Beitrag von saerdnaer »

also dan fang mer mal aoh...
saerdnaer hat geschrieben:
cyberalfa hat geschrieben:4. Quiz-Bot und- Admin-Feld nach Speichern im Konfig.-Menü leer!?
muss ich mal ausprobieren...
hab ich ausprobiert... bei meinter testversion funktionierts...

kannst ja mal folgendes in phpmyadmin eintragen:

Code: Alles auswählen

INSERT INTO phpbb_quiz_config VALUES 'quizbot_id', '2'), ('admin_user_id', '2');
cyberalfa hat geschrieben:zur emailer.php :
[...]
schon korrekt, oder ? :D
ja ist korrekt... kann mir den fehler aber nicht erklären...
cyberalfa hat geschrieben: was neues :

Beim Versuch eine Frage manuell zu stellen, bekomme ich folgende Meldung :

Error in posting

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near ' 1032348077, 9, 0, 0, 0 , 1)' at line 1

INSERT INTO phpbb_topics (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote , topic_quiz) VALUES ('Quiz Frage #1 ...', , 1032348077, 9, 0, 0, 0 , 1)

Line : 266
File : /is/htdocs/12751/www.offensif.de/forum/includes/functions_post.php
liegt daran das du den quizbot im adminbereich nicht angeben kannst...
K hat geschrieben:gibt's vieleicht 'ne möglichkeit die Frage als Betreff zu benutzen?
ich hab's mit {QUESTION} probiert, aber das hat leider nicht geklappt :-? .
Ist das irgendwie anders machbar?
wird in der nächsten version mit intigriert...

ah
Gesperrt

Zurück zu „phpBB 2.0: Mod Support“