Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.40 veröffentlicht (28.05.26)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Plugin-wunsch: Threats mit PW
#11
Ich habe es anders gelöst, das es an der entsprechenden Stelle keinen Hook gibt.
Herausgekommen ist folgendes PlugIn: http://www.mybbcoder.de/showthread.php?tid=1138
Zitieren
#12
jetzt suche ich genau das erstgenannte Plug In.
Findes aber nicht,
kann mir jemand sagen wie das hieß?
ODer den Link?
Zitieren
#13
Das Plugin "Thread Protected By Password" wurde wohl vom Autor gelöscht. Ich kann es nicht mehr finden.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#14
Schade, aber da kann man nichts mehr machen.....
Zitieren
#15
Da mcih das Thema Passwort für Thread auch interessiert, habe ich anhand des genauen Namen bei Google rechachiert und auch gefunden

Adresse: Thread Protected By Password for MyBB 1.2.9

WARNUNG: Bei der aktivierung wird das feld passwort angelegt bei einer deaktivierung erfolgt die entfernung

Script funktioniert im MyBB 1.4.4

PHP-Code:
<?php /* * Thread Protected By Password for MyBB 1.2.9 * By: LeX- * Website: http://www.thingiej.be * Version: 1.0 */ // ADD HOOK FOR NEW THREAD [SHOWING PASSWORDBOX] $plugins->add_hook('newthread_start', 'tp'); // ADD HOOK FOR NEW THREAD [INSERT NEW THREAD] $plugins->add_hook('newthread_do_newthread_end', 'tp_thread'); // ADD HOOK FOR SHOW THREAD [CHECK PASSWORD] $plugins->add_hook('showthread_start', 'tp_show'); // ADD HOOK FOR EDITPOST [SHOWING PASSWORDBOX] $plugins->add_hook('editpost_start', 'tp_edit'); // ADD HOOK FOR EDITPOST [UPDATING PASSWORD] $plugins->add_hook('editpost_do_editpost_end', 'tp_do_edit'); function tp_info() { return array( 'name' => 'Thread Protected By Password v1.0', 'description' => 'Makes It Possible So Certain UserGroups Can Enter A Thread Protecting Password.', 'website' => 'http://www.thingiej.be/', 'author' => 'LeX-', 'authorsite' => 'http://www.thingiej.be/', 'version' => '1.0', ); } function tp_activate() { global $db, $mybb; // SETTINGS $tp_group = array( "gid" => "NULL", "name" => "tp_options", "title" =>"ThreadPassword Settings", "description" => "Settings for the TP Plugin.", "disporder" => "3", "isdefault" => "no", ); $db->insert_query("settinggroups", $tp_group); $gid = $db->insert_id(); $new_setting = array( 'name' => 'tp_status', 'title' => 'ThreadPassword__ Status', 'description' => 'Makes It Possible So Certain UserGroups Can Enter A Thread Protecting Password.', 'optionscode' => 'yesno', 'value' => 'yes', 'disporder' => '1', 'gid' => intval($gid), ); $db->insert_query('settings', $new_setting); $new_setting2 = array( 'name' => 'tp_groups', 'title' => 'ThreadPassword__ Groups', 'description' => 'Which Groups Can Enter A Password For ThreadProtection. [Seperate By Comma]', 'optionscode' => 'text', 'value' => '', 'disporder' => '2', 'gid' => intval($gid), ); $db->insert_query('settings', $new_setting2); $new_setting3 = array( 'name' => 'tp_excludes', 'title' => 'ThreadPassword__ Excludes', 'description' => 'Which Groups Dont Need A Check When Trying To View A Thread. [Seperate By Comma]', 'optionscode' => 'text', 'value' => '', 'disporder' => '3', 'gid' => intval($gid), ); $db->insert_query('settings', $new_setting3); rebuildsettings(); // ALTERING //$db->query("ALTER TABLE `".TABLE_PREFIX."threads` ADD `password` VARCHAR(20) NOT NULL;"); // TEMPLATES $tp_template = array( "tid" => NULL, "title" => 'newthread_tp', "template" => $db->escape_string('<tr> <td class="trow2" width="20%"><strong>Password:</strong></td> <td class="trow2"><input type="text" class="textbox" id="password" name="password" size="40" value="{$password}" tabindex="1" /><span class=\"smalltext\"> [ Password Length :: Min. 3; Max. 20 ]</span></td> </tr>'), "sid" => "-1", "version" => "1.0", "dateline" => "1148741714", ); $db->insert_query("templates", $tp_template); require MYBB_ROOT.'/inc/adminfunctions_templates.php'; // ADD TPBOX [ NEWTHREAD ] find_replace_templatesets("newthread", '#{\$posticons}#', "{\$tp}{\$posticons}"); // ADD TPBOX [ EDITPOST ] find_replace_templatesets("editpost", '#{\$posticons}#', "{\$tp}{\$posticons}"); } function tp_deactivate() { global $db, $mybb; // SETTINGS $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='tp_status'"); $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='tp_groups'"); $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='tp_excludes'"); $db->query("DELETE FROM ".TABLE_PREFIX."settinggroups WHERE name='tp_options'"); rebuildsettings(); // ALTERING //$db->query("ALTER TABLE `"."threads` DROP `password`;"); // TEMPLATES $db->query("DELETE FROM ".TABLE_PREFIX."templates WHERE title = 'newthread_tp'"); // TEMPLATECHANGES require MYBB_ROOT.'/inc/adminfunctions_templates.php'; // REMOVE PASSWORDBOX [ NEWTHREAD ] find_replace_templatesets("newthread", '#'.preg_quote('{$tp}').'#', '',0); // REMOVE PASSWORDBOX [ EDITPOST ] find_replace_templatesets("editpost", '#'.preg_quote('{$tp}').'#', '',0); } function tp() { global $db, $mybb, $templates, $tp, $status; $status = ''; if($mybb->settings['tp_status'] != "no") { if($mybb->settings['tp_groups'] != "") { // EXPLODE $groups = explode(",", $mybb->settings['tp_groups']); // USERGROUP $usergroup = $mybb->user['usergroup']; // CHECK if(in_array($usergroup, $groups) || $usergroup == 4 || $usergroup == 3 || $usergroup == 6) { $status = "ok"; } } else if($mybb->user['usergroup'] == 4) { $status = "ok"; } else if($mybb->user['usergroup'] == 3) { $status = "ok"; } else if($mybb->user['usergroup'] == 6) { $status = "ok"; } if($status == "ok") { eval("\$tp = \"".$templates->get("newthread_tp")."\";"); } } } function tp_thread() { global $db, $mybb, $thread_info; // INCOMING $password = $db->escape_string($mybb->input['password']); // LENGTH $length = my_strlen($password); // CHECK if($password && $length >= 3 && $length < 20) { // TID $tid = intval($thread_info['tid']); // ENTER PASSWORD IN DB $update = array( "password" => $password ); $u_check = $db->update_query("threads", $update, "tid='".$tid."'"); if(!$u_check) { error("Error While Tryin' To Enter The Password Into The Database", "Thread Protection System"); } // SET COOKIE my_setcookie("threadpass[$tid]", md5($mybb->user['uid'].$password), null, true); } /* else { error("Thread Has Been Made But Is Not Protected Because The Password Didn't Meet The Standards", "Thread Protection System"); } */ } function tp_show() { global $db, $mybb, $thread, $status; $status = ''; if($mybb->settings['tp_status'] != "no") { if($mybb->settings['tp_excludes'] != "") { // EXPLODE $groups = explode(",", $mybb->settings['tp_excludes']); // USERGROUP $usergroup = $mybb->user['usergroup']; // CHECK if(in_array($usergroup, $groups) || $usergroup == 4 || $usergroup == 3 || $usergroup == 6) { $status = "ok"; } else if($mybb->user['usergroup'] == 4) { $status = "ok"; } else if($mybb->user['usergroup'] == 3) { $status = "ok"; } else if($mybb->user['usergroup'] == 6) { $status = "ok"; } if($status == "") { $password = $thread['password']; check_thread_password($thread['tid'], $password); } } else { $password = $thread['password']; check_thread_password($thread['tid'], $password); } } } function tp_edit() { global $db, $mybb, $templates, $tp, $status; $status = ''; if($mybb->settings['tp_status'] != "no") { // CHECK IF THERE WAS A PASSWORD SET // INCOMING $pid = intval($mybb->input['pid']); $query = $db->query(" SELECT t.password, p.tid FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid) WHERE t.firstpost = {$pid} "); $password = $db->fetch_field($query, "password"); if($password != "") { if($mybb->settings['tp_groups'] != "") { // EXPLODE $groups = explode(",", $mybb->settings['tp_groups']); // USERGROUP $usergroup = $mybb->user['usergroup']; // CHECK if(in_array($usergroup, $groups) || $usergroup == 4 || $usergroup == 3 || $usergroup == 6) { $status = "ok"; } } else if($mybb->user['usergroup'] == 4) { $status = "ok"; } else if($mybb->user['usergroup'] == 3) { $status = "ok"; } else if($mybb->user['usergroup'] == 6) { $status = "ok"; } } if($status == "ok") { eval("\$tp = \"".$templates->get("newthread_tp")."\";"); } } } function tp_do_edit() { global $db, $mybb, $templates, $tp, $tid; //INCOMING $password = $db->escape_string($mybb->input['password']); // LENGTH $length = my_strlen($password); // CHECK if($password && $length >= 3 && $length < 20) { // ENTER PASSWORD IN DB $update = array( "password" => $password ); $u_check = $db->update_query("threads", $update, "tid='".$tid."'"); if(!$u_check) { error("Error While Tryin' To Enter The Password Into The Database", "Thread Protection System"); } // SET COOKIE my_setcookie("threadpass[$tid]", md5($mybb->user['uid'].$password), null, true); } } function check_thread_password($tid, $password="") { global $mybb, $header, $footer, $headerinclude, $theme, $templates, $lang; $showform = 1; if($password) { if($mybb->input['pwverify']) { if($password == $mybb->input['pwverify']) { my_setcookie("threadpass[$tid]", md5($mybb->user['uid'].$mybb->input['pwverify']), null, true); $showform = 0; } else { eval("\$pwnote = \"".$templates->get("forumdisplay_password_wrongpass")."\";"); $showform = 1; } } else { if(!$_COOKIE['threadpass'][$tid] || ($_COOKIE['threadpass'][$tid] && md5($mybb->user['uid'].$password) != $_COOKIE['threadpass'][$tid])) { $showform = 1; } else { $showform = 0; } } } else { $showform = 0; } if($showform) { $_SERVER['REQUEST_URI'] = htmlspecialchars_uni($_SERVER['REQUEST_URI']); eval("\$pwform = \"".$templates->get("forumdisplay_password")."\";"); output_page($pwform); exit; } } ?>
Zitieren
#16
Hmm... :undecided:

Hallo,

ich verwende seit Kurzem das Plug-In "Thread Protected By Password v1.0 (1.0)"

Es erscheint beim Erstellen eines neuen Themas auch das Passwort-Feld aber wenn ich dann auf Beitrag erstellen klick kommt folgendes:

MyBB has experienced an internal SQL error and cannot continue.

Zitat:SQL Error:
1054 - Unknown column 'password' in 'field list'
Query:
UPDATE mybb_threads SET `password`='test' WHERE tid='102'


Woran liegt das? Sad

Edit:

Exclamation Ich kann mit dem Editor auch keine Beiträge mehr bearbeiten.

Zitat:MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1054 - Unknown column 't.password' in 'field list'
Query:
SELECT t.password, p.tid FROM mybb_posts p LEFT JOIN mybb_threads t ON (p.tid=t.tid) WHERE t.firstpost = 94


Mit dem Inlineeditor geht es noch, aber mit dem geht ja alles, damit kann man sogar Themen in geschlossenen Foren bearbeiten.
Zitieren
#17
Im Code oben wurden die entsprechenden Zeilen auskommentiert. Probiere:
PHP-Code:
<?php /* * Thread Protected By Password for MyBB 1.2.9 * By: LeX- * Website: http://www.thingiej.be * Version: 1.0 */ // ADD HOOK FOR NEW THREAD [SHOWING PASSWORDBOX] $plugins->add_hook('newthread_start', 'tp'); // ADD HOOK FOR NEW THREAD [INSERT NEW THREAD] $plugins->add_hook('newthread_do_newthread_end', 'tp_thread'); // ADD HOOK FOR SHOW THREAD [CHECK PASSWORD] $plugins->add_hook('showthread_start', 'tp_show'); // ADD HOOK FOR EDITPOST [SHOWING PASSWORDBOX] $plugins->add_hook('editpost_start', 'tp_edit'); // ADD HOOK FOR EDITPOST [UPDATING PASSWORD] $plugins->add_hook('editpost_do_editpost_end', 'tp_do_edit'); function tp_info() { return array( 'name' => 'Thread Protected By Password v1.0', 'description' => 'Makes It Possible So Certain UserGroups Can Enter A Thread Protecting Password.', 'website' => 'http://www.thingiej.be/', 'author' => 'LeX-', 'authorsite' => 'http://www.thingiej.be/', 'version' => '1.0', ); } function tp_activate() { global $db, $mybb; // SETTINGS $tp_group = array( "gid" => "NULL", "name" => "tp_options", "title" =>"ThreadPassword Settings", "description" => "Settings for the TP Plugin.", "disporder" => "3", "isdefault" => "no", ); $db->insert_query("settinggroups", $tp_group); $gid = $db->insert_id(); $new_setting = array( 'name' => 'tp_status', 'title' => 'ThreadPassword__ Status', 'description' => 'Makes It Possible So Certain UserGroups Can Enter A Thread Protecting Password.', 'optionscode' => 'yesno', 'value' => 'yes', 'disporder' => '1', 'gid' => intval($gid), ); $db->insert_query('settings', $new_setting); $new_setting2 = array( 'name' => 'tp_groups', 'title' => 'ThreadPassword__ Groups', 'description' => 'Which Groups Can Enter A Password For ThreadProtection. [Seperate By Comma]', 'optionscode' => 'text', 'value' => '', 'disporder' => '2', 'gid' => intval($gid), ); $db->insert_query('settings', $new_setting2); $new_setting3 = array( 'name' => 'tp_excludes', 'title' => 'ThreadPassword__ Excludes', 'description' => 'Which Groups Dont Need A Check When Trying To View A Thread. [Seperate By Comma]', 'optionscode' => 'text', 'value' => '', 'disporder' => '3', 'gid' => intval($gid), ); $db->insert_query('settings', $new_setting3); rebuildsettings(); // ALTERING $db->query("ALTER TABLE `".TABLE_PREFIX."threads` ADD `password` VARCHAR(20) NOT NULL;"); // TEMPLATES $tp_template = array( "tid" => NULL, "title" => 'newthread_tp', "template" => $db->escape_string('<tr> <td class="trow2" width="20%"><strong>Password:</strong></td> <td class="trow2"><input type="text" class="textbox" id="password" name="password" size="40" value="{$password}" tabindex="1" /><span class=\"smalltext\"> [ Password Length :: Min. 3; Max. 20 ]</span></td> </tr>'), "sid" => "-1", "version" => "1.0", "dateline" => "1148741714", ); $db->insert_query("templates", $tp_template); require MYBB_ROOT.'/inc/adminfunctions_templates.php'; // ADD TPBOX [ NEWTHREAD ] find_replace_templatesets("newthread", '#{\$posticons}#', "{\$tp}{\$posticons}"); // ADD TPBOX [ EDITPOST ] find_replace_templatesets("editpost", '#{\$posticons}#', "{\$tp}{\$posticons}"); } function tp_deactivate() { global $db, $mybb; // SETTINGS $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='tp_status'"); $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='tp_groups'"); $db->query("DELETE FROM ".TABLE_PREFIX."settings WHERE name='tp_excludes'"); $db->query("DELETE FROM ".TABLE_PREFIX."settinggroups WHERE name='tp_options'"); rebuildsettings(); // ALTERING $db->query("ALTER TABLE `".TABLE_PREFIX."threads` DROP `password`;"); // TEMPLATES $db->query("DELETE FROM ".TABLE_PREFIX."templates WHERE title = 'newthread_tp'"); // TEMPLATECHANGES require MYBB_ROOT.'/inc/adminfunctions_templates.php'; // REMOVE PASSWORDBOX [ NEWTHREAD ] find_replace_templatesets("newthread", '#'.preg_quote('{$tp}').'#', '',0); // REMOVE PASSWORDBOX [ EDITPOST ] find_replace_templatesets("editpost", '#'.preg_quote('{$tp}').'#', '',0); } function tp() { global $db, $mybb, $templates, $tp, $status; $status = ''; if($mybb->settings['tp_status'] != "no") { if($mybb->settings['tp_groups'] != "") { // EXPLODE $groups = explode(",", $mybb->settings['tp_groups']); // USERGROUP $usergroup = $mybb->user['usergroup']; // CHECK if(in_array($usergroup, $groups) || $usergroup == 4 || $usergroup == 3 || $usergroup == 6) { $status = "ok"; } } else if($mybb->user['usergroup'] == 4) { $status = "ok"; } else if($mybb->user['usergroup'] == 3) { $status = "ok"; } else if($mybb->user['usergroup'] == 6) { $status = "ok"; } if($status == "ok") { eval("\$tp = \"".$templates->get("newthread_tp")."\";"); } } } function tp_thread() { global $db, $mybb, $thread_info; // INCOMING $password = $db->escape_string($mybb->input['password']); // LENGTH $length = my_strlen($password); // CHECK if($password && $length >= 3 && $length < 20) { // TID $tid = intval($thread_info['tid']); // ENTER PASSWORD IN DB $update = array( "password" => $password ); $u_check = $db->update_query("threads", $update, "tid='".$tid."'"); if(!$u_check) { error("Error While Tryin' To Enter The Password Into The Database", "Thread Protection System"); } // SET COOKIE my_setcookie("threadpass[$tid]", md5($mybb->user['uid'].$password), null, true); } /* else { error("Thread Has Been Made But Is Not Protected Because The Password Didn't Meet The Standards", "Thread Protection System"); } */ } function tp_show() { global $db, $mybb, $thread, $status; $status = ''; if($mybb->settings['tp_status'] != "no") { if($mybb->settings['tp_excludes'] != "") { // EXPLODE $groups = explode(",", $mybb->settings['tp_excludes']); // USERGROUP $usergroup = $mybb->user['usergroup']; // CHECK if(in_array($usergroup, $groups) || $usergroup == 4 || $usergroup == 3 || $usergroup == 6) { $status = "ok"; } else if($mybb->user['usergroup'] == 4) { $status = "ok"; } else if($mybb->user['usergroup'] == 3) { $status = "ok"; } else if($mybb->user['usergroup'] == 6) { $status = "ok"; } if($status == "") { $password = $thread['password']; check_thread_password($thread['tid'], $password); } } else { $password = $thread['password']; check_thread_password($thread['tid'], $password); } } } function tp_edit() { global $db, $mybb, $templates, $tp, $status; $status = ''; if($mybb->settings['tp_status'] != "no") { // CHECK IF THERE WAS A PASSWORD SET // INCOMING $pid = intval($mybb->input['pid']); $query = $db->query(" SELECT t.password, p.tid FROM ".TABLE_PREFIX."posts p LEFT JOIN ".TABLE_PREFIX."threads t ON (p.tid=t.tid) WHERE t.firstpost = {$pid} "); $password = $db->fetch_field($query, "password"); if($password != "") { if($mybb->settings['tp_groups'] != "") { // EXPLODE $groups = explode(",", $mybb->settings['tp_groups']); // USERGROUP $usergroup = $mybb->user['usergroup']; // CHECK if(in_array($usergroup, $groups) || $usergroup == 4 || $usergroup == 3 || $usergroup == 6) { $status = "ok"; } } else if($mybb->user['usergroup'] == 4) { $status = "ok"; } else if($mybb->user['usergroup'] == 3) { $status = "ok"; } else if($mybb->user['usergroup'] == 6) { $status = "ok"; } } if($status == "ok") { eval("\$tp = \"".$templates->get("newthread_tp")."\";"); } } } function tp_do_edit() { global $db, $mybb, $templates, $tp, $tid; //INCOMING $password = $db->escape_string($mybb->input['password']); // LENGTH $length = my_strlen($password); // CHECK if($password && $length >= 3 && $length < 20) { // ENTER PASSWORD IN DB $update = array( "password" => $password ); $u_check = $db->update_query("threads", $update, "tid='".$tid."'"); if(!$u_check) { error("Error While Tryin' To Enter The Password Into The Database", "Thread Protection System"); } // SET COOKIE my_setcookie("threadpass[$tid]", md5($mybb->user['uid'].$password), null, true); } } function check_thread_password($tid, $password="") { global $mybb, $header, $footer, $headerinclude, $theme, $templates, $lang; $showform = 1; if($password) { if($mybb->input['pwverify']) { if($password == $mybb->input['pwverify']) { my_setcookie("threadpass[$tid]", md5($mybb->user['uid'].$mybb->input['pwverify']), null, true); $showform = 0; } else { eval("\$pwnote = \"".$templates->get("forumdisplay_password_wrongpass")."\";"); $showform = 1; } } else { if(!$_COOKIE['threadpass'][$tid] || ($_COOKIE['threadpass'][$tid] && md5($mybb->user['uid'].$password) != $_COOKIE['threadpass'][$tid])) { $showform = 1; } else { $showform = 0; } } } else { $showform = 0; } if($showform) { $_SERVER['REQUEST_URI'] = htmlspecialchars_uni($_SERVER['REQUEST_URI']); eval("\$pwform = \"".$templates->get("forumdisplay_password")."\";"); output_page($pwform); exit; } } ?>
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Letzten Threats auf Homepage Freshmaker_01 0 1.651 09.03.2006, 15:23
Letzter Beitrag: Freshmaker_01