Quiz MOD Problem

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
SuXx
Beiträge: 208
Registriert: Sa 28.Aug, 2004 00:01

Quiz MOD Problem

Beitrag von SuXx »

Immer wenn ich eine Quizfrage stellen will kommt folgende Fehlermeldung
DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ' 0, 1)' at line 1

INSERT INTO phpbb_topics (topic_title, topic_poster, topic_time, forum_id, news_id, topic_status, topic_type, topic_announce_duration, topic_vote, topic_quiz) VALUES ('Quiz Frage #1 ...', 2, 1104074249, 2, 0, 0, 0, , 0, 1)

Line : 423
File : /home/htdocs/web5/html/ottajesko.de/suxx/phpbb/includes/functions_post.php
Kann mir jemand helfen?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Füg mal vor der SQL-Anweisung in der functions_post.php dieses hier ein:

Code: Alles auswählen

$topic_announce_duration = 0;
Dann sollte der Fehler behoben sein.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Auch ein quiz MOd Problem

Beitrag von juergenforum »

Hallo,
also bevor ich einen neuen Thread öffen schreibe ich einmal in diesen:

1. Problem:
Ich habe unter Quiz Fragen verwalten alle "Bereit " geschaltet, aber trotzdem erscheinen sie nicht im Forum.
2. Unter Quizfrage manuell stellen nach der Auswahl und dem Betätigen des "Absende" Buttons kommen folgende Fehlermeldungen:

Warning: Missing argument 14 for prepare_post() in /www/htdocs/.../forum/includes/functions_post.php on line 130

Warning: Missing argument 21 for submit_post() in /www/htdocs/..../forum/includes/functions_post.php on line 226

Error in posting

DEBUG MODE

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

INSERT INTO phpbb_posts_text (post_id, post_subject, bbcode_uid, post_text, quiz_answer, post_az) VALUES (6, 'Quiz Frage #1 ...', 'd182d988f5', 'Und hier die neue Quiz-Frage: [QUIZ] Diese Quizfrage wurde von Anonymous vorgeschlagen', '', '')

Line : 293
File : /www/htdocs/.../forum/includes/functions_post.php

Kann irgendwer helfen?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Schau mal mit phpmyadmin (oder einem anderen Datenbank-Tool) in der Tabelle phpbb_posts_text nach, ob es da wirklich das Feld post_az gibt. Wenn nicht, dann aus der hier in Deiner Fehlermeldung angezeigten SQL-Anweisung löschen, sowie die letzten "" for der letzten Klammer ")".
Achtung: Diese Anweisung steht in einer Zeile mit einer UPDATE-Anweisung. Auch diese gleich prüfen und ggf. korrigieren.
Bei Problemen damit, häng die functions_post.php und posting.php als ZIP-File an.
Aber schau auf jeden Fall nach, ob das Feld post_az existiert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

Also die ersten beiden Fehlermeldungen erscheinen wenn in der quiz.php (in der include) vergessen wurde dass man die in der functions_post.php neu hinzugefügte Variablen (also aus anderen vorherigen Mods) in prepare_post und submit_post nachrüsten muss. Am besten machste beide auf suchst in beiden nach der submit und prepare Stelle und vergleichst ^^. Un naja das was in der quiz.php (in der INCLUDE) fehlt das einfach da mit rein schreiben. ;)

Hoffe das hilft weiter. ^^
Nur ein Informatik Student. ^^
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ja, knapper und genauer hätte ich das jetzt auch nicht beschreiben können.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

So sieht die Zeile aus:

$sql = ($mode != 'editpost') ? "INSERT INTO " . POSTS_TEXT_TABLE . " (post_id, post_subject, bbcode_uid, post_text, quiz_answer, post_az) VALUES ($post_id, '$post_subject', '$bbcode_uid', '$post_message', '" . ( empty($post_data['quiz_answer']) ? '' : $post_data['quiz_answer'] ) . "', '$post_az')" : "UPDATE " . POSTS_TEXT_TABLE . " SET post_text = '$post_message', bbcode_uid = '$bbcode_uid', post_subject = '$post_subject', post_az = '$post_az' WHERE post_id = $post_id";

soll ich nur post_az löschen?
oder die ganze Zeile?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Hm, $post_az" sagt mit nichts.
Ändere diese Zeile in folgende ab:

Code: Alles auswählen

$sql = ($mode != 'editpost') ? "INSERT INTO " . POSTS_TEXT_TABLE . " (post_id, post_subject, bbcode_uid, post_text, quiz_answer) VALUES ($post_id, '$post_subject', '$bbcode_uid', '$post_message', '" . ( empty($post_data['quiz_answer']) ? '' : $post_data['quiz_answer'] ) . "')" : "UPDATE " . POSTS_TEXT_TABLE . " SET post_text = '$post_message', bbcode_uid = '$bbcode_uid', post_subject = '$post_subject' WHERE post_id = $post_id";
Nur die Frage, ob dieses Feld nicht doch von irgend einem Mod stammt, den Du noch installiert hast ...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

Die letzte Fehlermeldung ist nun verschwunden, schon komisch.
Jetzt habe ich eine neue wenn ich eine Quizfrage manuell stellen will.
Wenn ich die Index Seite oder Threads im Forum öffne schient ab und zu auch diese Fehlermeldung. Sie verschwindet wenn ich den Brwoser aktualisiere.

Code: Alles auswählen

Error in posting

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near '/ ADDED , topic_quiz AND , 1 BY Quiz Hack)' at line 1

INSERT INTO phpbb_topics (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote, topic_quiz) VALUES ('', 2, 1106349067, 20, 0, 0, 0, 1// ADDED , topic_quiz AND , 1 BY Quiz Hack)

Line : 268
File : /www/htdocs/...../forum/includes/functions_post.php
Was ist da wieder falsch?
Die Zeile 261 - 269 sehen so aus:

Code: Alles auswählen

	if ($mode == 'newtopic' || ($mode == 'editpost' && $post_data['first_post']))
	{
		$topic_vote = (!empty($poll_title) && count($poll_options) >= 2) ? 1 : 0;

		$sql  = ($mode != "editpost") ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote, topic_quiz) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote, " . ( empty($post_data['topic_quiz']) ? '0' : '1' ) . "// ADDED , topic_quiz AND , " . ( empty($post_data['topic_quiz']) ? '0' : '1' ) . " BY Quiz Hack)" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type " . (($post_data['edit_vote'] || !empty($poll_title)) ? ", topic_vote = " . $topic_vote : "") . " WHERE topic_id = $topic_id";
		if (!$db->sql_query($sql))
		{
			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}
Grundsätzlich warum tauchen die Quizfragen nicht im Forum auf obwohl ich diese Freigegeben habe?
Und wenn ich sie nochmal aktiviere dann kommt "Sie können diese Quizfrage(n) nicht freigeben, da sie bereits freigegeben sind."
Kann mir jemand helfen?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Der User, der die Quizfragen stelle, muss dieses auch dürfen;)
Wenn Du das selber bist, liegt das hier an dem Fehler.
Wenn Du einen anderen eingesetzt hast, dann muss der die nötigen Rechte haben.

Und der Fehler:
Du hast den Kommentar, der mit dem Quizmod eingefügt werden soll, an der falschen Stelle eingetragen. So ist dieser Part der function_post.php richtig:

Code: Alles auswählen

	if ($mode == 'newtopic' || ($mode == 'editpost' && $post_data['first_post']))
	{
		$topic_vote = (!empty($poll_title) && count($poll_options) >= 2) ? 1 : 0;

		$sql  = ($mode != "editpost") ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_type, topic_vote, topic_quiz) VALUES ('$post_subject', " . $userdata['user_id'] . ", $current_time, $forum_id, " . TOPIC_UNLOCKED . ", $topic_type, $topic_vote, " . ( empty($post_data['topic_quiz']) ? '0' : '1' ) . " : "UPDATE " . TOPICS_TABLE . " SET topic_title = '$post_subject', topic_type = $topic_type " . (($post_data['edit_vote'] || !empty($poll_title)) ? ", topic_vote = " . $topic_vote : "") . " WHERE topic_id = $topic_id";
		if (!$db->sql_query($sql))
		{
			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

Danke,
ich habe die function_post.php nochmal ganz neu geändert und jetzt läuft es auch mit post_az.
Der Fehler lag dann wirklich nur daran, das ich den Kommentar falsch eingefügt habe.
Benutzeravatar
Dizko
Beiträge: 38
Registriert: Di 28.Sep, 2004 19:00

Beitrag von Dizko »

where can I find this hack ?
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

@ Dizko:
http://sourceforge.net/project/showfile ... e_id=64021

Habe nun doch noch eine Frage:
Wenn man die Lösung in der Quizfrage anklickt und auf "Go" klickt öffnet sicht ein neues Fenster, wo man nocheinmal seine Lösung bestätigen muss (auswählen kann). Das finde ich ein wenig verwirrend für meine Besucher.
Kann die Lösung nicht direkt gepostet (also mit dem Go) werden?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Nein, da ein Text eingegeben werden muss, der mit der Antwort nicht gegeben ist. Oder soll hier ein Dummy-Text erscheinen?
Bitte nicht die Antwort, die in einem Rahmen im Post erscheint, mit einem "normalen" Post-Text verwechseln. Dieses wird mit der Erstellung des Beitrags erst eingefügt und nicht zusammen als Beitragstext gespeichert. Das gilt auch für den Fragenblock!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

Irgendwie tauchen jetzt neue Probleme auf.
Ich habe das Quiz Hack Addon installiert, damit das Quiz nicht zu Ende ist wenn der Erste die Frage richtig beantwortet, sonder solange läuft bis zur nächsten Frage und alle richtigen Antworten von Usern werden mit einem Punkt belohnt.

Soviel zur Theorie.
Ich habe eingestellt das das Quiz einen Tag laufen soll (ich habe es auch schon mit 2 Tagen gemacht). Es wird die Frage automatisch gestellt, aber nach einer Minute direkt als nicht gelöst angegeben. Wo liegt der Fehler?

Noch eine andere oben schon besprochene Fehlermeldung bei der ich die prepare_post und die submit_post ändern soll damit folgende Fehlermeldung nicht erscheint:
Warning: Missing argument 14 for prepare_post() in /www/htdocs/.../forum/includes/functions_post.php on line 130

Warning: Missing argument 21 for submit_post() in /www/htdocs/..../forum/includes/functions_post.php on line 226

Die Prepare Post konnte ich ohne Probleme ändern, aber meine submit_post in der quiz.php sieht so aus:

Code: Alles auswählen

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), $poll_title, $poll_options, $poll_length);
und die in der function_post.php so:

Code: Alles auswählen

function submit_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$poll_id, &$topic_type, &$bbcode_on, &$html_on, &$smilies_on, &$attach_sig, &$bbcode_uid, &$post_username, &$post_subject, &$post_message, &$post_az, &$poll_title, &$poll_options, &$poll_length)
Einfach überschreiben wäre fatal, oder?[/code]
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

ganz eiinfaches Problem schnappü dir deine functions_post.php und vergleiche die submit_post und die prepare_post mit den Zeilen die in der include/quiz.php enthalten sind. So wie es aussieht musst du da einige Variablen in den quiz.php hinzufügen
Nur ein Informatik Student. ^^
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

das habe ich getan ich habe die fehlenden Einträge in die quiz.php geschrieben und direkt einen "Debug" berim Aufruf des Forums bekommen.

In der quiz.php (submit) sind mehr Einträge als in der function_post.php.

Sie CODES oben
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

Versuchs damit. post_az haste nicht in der quiz.php drni stehen, was auch immer das für eine Variable ist. ~,~ ^^

Code: Alles auswählen

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), $post_az, $poll_title, $poll_options, $poll_length);
Nur ein Informatik Student. ^^
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

Nun kommen erscheinen kurz zahlreiche Fehlermeldungen beim Starten der Quizautomatik und der "Go" Button unterhalb der Frage lässt sich nciht bedienen:

Code: Alles auswählen

Warning: Missing argument 14 for prepare_post() in /www/htdocs/.../forum/includes/functions_post.php on line 130

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/.../forum/includes/functions_post.php:130) in /www/htdocs/.../forum/includes/sessions.php on line 307

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/.../forum/includes/functions_post.php:130) in /www/htdocs/.../forum/includes/sessions.php on line 308

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/.../forum/includes/functions_post.php:130) in /www/htdocs/.../forum/includes/page_header.php on line 505

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/.../forum/includes/functions_post.php:130) in /www/htdocs/.../forum/includes/page_header.php on line 507

Warning: Cannot modify header information - headers already sent by (output started at /www/htdocs/.../forum/includes/functions_post.php:130) in /www/htdocs/.../forum/includes/page_header.php on line 508
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

poste mal die prepare_post von beiden: ienmal der functions_post und der quiz.php (aus dem include Verzeichnis)
Nur ein Informatik Student. ^^
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

function_post.php:

Code: Alles auswählen

function prepare_post(&$mode, &$post_data, &$bbcode_on, &$html_on, &$smilies_on, &$error_msg, &$username, &$bbcode_uid, &$subject, &$message, &$amazon, &$poll_title, &$poll_options, &$poll_length)
quiz.php:

Code: Alles auswählen

prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $poll_length);
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

die prepare so ändern: (quiz.php in der include)

Code: Alles auswählen

prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $amazon, $poll_title, $poll_options, $poll_length);
Zuletzt geändert von Bootenks am So 23.Jan, 2005 13:24, insgesamt 1-mal geändert.
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

und der "GO" Button lässt sich nicht betätigen. Also kann man nicht antworten
Zuletzt geändert von juergenforum am So 23.Jan, 2005 13:56, insgesamt 1-mal geändert.
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

doch das ändern eben dieser stelle müsste das missing verschwinden lassen!
Nur ein Informatik Student. ^^
juergenforum
Beiträge: 19
Registriert: Mi 12.Jan, 2005 22:42

Beitrag von juergenforum »

die fehlermeldung ist weg, aber der "Go" button lässt sich nicht mehr betätigen. Er ging aber schoneinmal kurz nach der Installation des Quiz Hack Addons. Sogar mit ablaufender Zeit. Verstehe ich jetzt nicht.
Antworten