Ich bekomme seit gestern immer diese fehler meldung:
Fatal error: Class 'PwCrypt' not found in Clan-SW/Page/include/includes/func/user.php on line 87
Wo ist da der fehler?
<?php # hier werden alle user spezifischen funktionen # definert... function user_identification () { user_auth(); user_login_check(); user_update_database(); user_check_url_rewrite(); } function user_auth () { debug (\'user - auth gestartet\'. session_id()); $cn = session_und_cookie_name(); if (!user_key_in_db() OR !isset($_SESSION[\'authid\']) OR (isset($_SESSION[\'authsess\']) AND $_SESSION[\'authsess\'] != $cn)) { debug (\'user - nicht in db oder nicht authid\'); user_set_guest_vars(); user_set_user_online (); # wenn cn cookie vorhanden # dann checken ob er sich damit einloggen darf if (isset($_COOKIE[$cn])) { user_auto_login_check(); } # gruppen, und modulzugehoerigkeit setzten user_set_grps_and_modules(); } } function user_check_url_rewrite() { global $allgAr; if ( !loggedin() AND $allgAr[\'show_session_id\'] == 0 ) { # loescht die sessionid von allen urls # auch urls wie formulare usw. damit # suchmaschienen bots nicht iritiert sind Zwinker # output_reset_rewrite_vars ist eine php funktion # nicht unnoetig dannach suchen Zwinker ... output_reset_rewrite_vars (); } } function user_update_database () { $dif = date(\'Y-m-d H:i:s\', time() - 7200); db_query(\"UPDATE prefix_online SET uptime = now() WHERE sid = \'\".session_id().\"\'\"Zwinker; db_query(\"DELETE FROM prefix_online WHERE uptime < \'\". $dif.\"\'\"Zwinker; if ( loggedin() ) { db_query(\"UPDATE prefix_user SET llogin = \'\".time().\"\' WHERE id = \'\".$_SESSION[\'authid\'].\"\'\"Zwinker; } } function user_set_user_online () { global $allgAr; if (0 == db_result(db_query(\"SELECT COUNTStar FROM prefix_online WHERE sid = \'\".session_id().\"\'\"Zwinker,0) ) { db_query(\"INSERT INTO prefix_online (sid,uptime,ipa) VALUES (\'\".session_id().\"\',now(),\'\".getip().\"\')\"Zwinker; } $_SESSION[\'authgfx\'] = $allgAr[\'gfx\']; } function user_key_in_db() { if ( 1 == db_result(db_query(\"SELECT COUNTStar FROM prefix_online WHERE sid = \'\".session_id().\"\'\"Zwinker,0) ) { return ( true ); } else { return ( false ); } } function session_und_cookie_name () { return (md5(dirname($_SERVER[\"HTTP_HOST\"].$_SERVER[\"SCRIPT_NAME\"]).DBPREF)); } function user_pw_crypt($plainPassword) { if (version_compare(PHP_VERSION, \'5.0\') !== -1) { $pwCrypt = new PwCrypt(); return $pwCrypt->cryptPasswd($plainPassword); } return md5($plainPassword); } function user_pw_check($plainPassword, &$passwordHash, $userId = false) { if (version_compare(PHP_VERSION, \'5.0\') !== -1) { $pwCrypt = new PwCrypt(); $correct = $pwCrypt->checkPasswd($plainPassword, $passwordHash); if ($correct && $userId !== false && $pwCrypt->checkHashStrength($passwordHash)) { $passwordHash = $pwCrypt->cryptPasswd($plainPassword); if ($passwordHash) { db_query(\'UPDATE `prefix_user` SET `pass` = \"\' . $passwordHash . \'\" WHERE `id` = \' . $userId); } } return $correct; } return md5($plainPassword) === $passwordHash; } function user_set_cookie($id, $cryptedPassword) { $cookieString = $id . \'=\' . md5(DBUSER . $cryptedPassword); setcookie($_SESSION[\'authsess\'], $cookieString , strtotime(\'+1 year\'), \'/\' ); } function user_cookie_check($cookieHash, $cryptedPassword) { return md5(DBUSER . $cryptedPassword) == $cookieHash; } function user_login_check () { if ( isset ($_POST[\'user_login_sub\']) AND isset ($_POST[\'name\']) AND isset ($_POST[\'pass\']) ) { debug (\'posts vorhanden\'); $name = escape_nickname($_POST[\'name\']); if ($name != $_POST[\'name\'] OR strlen($_POST[\'name\']) > 15) { return false; } $erg = db_query(\"SELECT name,id,recht,pass,llogin FROM prefix_user WHERE name = BINARY \'\".$name.\"\'\"Zwinker; if ( db_num_rows($erg) == 1 ) { debug (\'user gefunden\'); $row = db_fetch_assoc($erg); if (user_pw_check($_POST[\'pass\'], $row[\'pass\'], $row[\'id\']) ) { debug (\'passwort stimmt ... \'.$row[\'name\']); $_SESSION[\'authname\'] = $row[\'name\']; $_SESSION[\'authid\'] = $row[\'id\']; $_SESSION[\'authright\'] = $row[\'recht\']; $_SESSION[\'lastlogin\'] = $row[\'llogin\']; $_SESSION[\'authsess\'] = session_und_cookie_name(); db_query(\"UPDATE prefix_online SET uid = \".$_SESSION[\'authid\'].\" WHERE sid = \'\".session_id().\"\'\"Zwinker; user_set_cookie($row[\'id\'], $row[\'pass\']); user_set_grps_and_modules(); return (true); } } global $menu; $menu->set_url (0, \'user\'); $menu->set_url (1, \'login\'); } return ( false ); } function user_auto_login_check () { $cn = session_und_cookie_name(); $dat = explode(\'=\',$_COOKIE[$cn]); $id = $pw = 0; if (isset($dat[0])) { $id = escape($dat[0], \'integer\'); } if (isset($dat[1])) { $pw = $dat[1]; } debug (\' pw \' . $pw ); debug (\' id \' . $id ); $erg = db_query(\"SELECT name,id,recht,pass,llogin FROM prefix_user WHERE id = \".$id); if (db_num_rows($erg) == 1) { debug (\'benutzer gefunden\'); $row = db_fetch_assoc($erg); if (user_cookie_check($pw, $row[\'pass\'])) { debug (\'passwoerter stimmen\'); debug ($row[\'name\']); $_SESSION[\'authname\'] = $row[\'name\']; $_SESSION[\'authid\'] = $row[\'id\']; $_SESSION[\'authright\'] = $row[\'recht\']; $_SESSION[\'lastlogin\'] = $row[\'llogin\']; $_SESSION[\'authsess\'] = $cn; db_query(\"UPDATE prefix_online SET uid = \".$_SESSION[\'authid\'].\" WHERE sid = \'\".session_id().\"\'\"Zwinker; user_set_cookie($row[\'id\'], $row[\'pass\']); return (true); } } user_logout (); return (false); } function user_set_guest_vars() { $_SESSION[\'authname\'] = \'Gast\'; $_SESSION[\'authid\'] = 0; $_SESSION[\'authright\'] = 0; $_SESSION[\'lastlogin\'] = time(); $_SESSION[\'authgrp\'] = array(); $_SESSION[\'authmod\'] = array(); $_SESSION[\'authsess\'] = session_und_cookie_name(); } function user_markallasread () { $_SESSION[\'lastlogin\'] = time(); } function user_logout () { #global $allgAr; #$_SESSION = array(); #$_SESSION[\'authgfx\'] = $allgAr[\'gfx\']; user_set_guest_vars(); db_query(\"UPDATE prefix_online SET uid = \".$_SESSION[\'authid\'].\" WHERE sid = \'\".session_id().\"\'\"Zwinker; setcookie(session_und_cookie_name(), \"\", time()-999999999999, \"/\" ); #if (isset($_COOKIE[session_name()])) { # setcookie(session_name(), \'\', time()-99999999999931104000, \'/\'); #} #setcookie(session_und_cookie_name(), \"\", time()-999999999999, \"/\" ); #session_destroy(); } function user_set_grps_and_modules() { $_SESSION[\'authgrp\'] = array(); $_SESSION[\'authmod\'] = array(); $_SESSION[\'adminaccess\'] = array(); if (loggedin()) { $erg = db_query(\'SELECT gid FROM prefix_groupusers WHERE uid = \' . $_SESSION[\'authid\']); while ($row = db_fetch_assoc($erg)) { $_SESSION[\'authgrp\'][$row[\'gid\']] = true; } $erg = db_query(\'SELECT DISTINCT m.url, m.gshow \' . \'FROM prefix_modulerights mr \' . \'INNER JOIN prefix_modules m ON m.id = mr.mid \' . \'WHERE mr.uid = \' . $_SESSION[\'authid\']); while ($row = db_fetch_assoc($erg)) { $_SESSION[\'authmod\'][$row[\'url\']] = true; if ($row[\'gshow\']) { $_SESSION[\'adminaccess\'][$row[\'url\']] = true; } } } } function loggedin () { if ( has_right(-1) ) { return ( true ); } else { return ( false ); } } function is_admin () { if ( has_right(-9) ) { return ( true ); } else { return ( false ); } } function is_coadmin () { if ( has_right(-8) ) { return ( true ); } else { return ( false ); } } function is_siteadmin ($m = NULL) { if ( has_right(-7) ) { return ( true ); } if ( !is_null($m) AND has_right(NULL, $m)) { return (true); } return ( false ); } # diese funktion liefert immer true wenn es ein admin ist. # wenn kein kein admin wird geprueft ob der user # entweder ein angegebenes recht oder in einer angegebene # gruppe ist. oder ob er fals angegben das modulrecht hat. # wenn eines von diesen 3 kriterien stimmt wird true ansonsten # wenn keins uebereinstimmt false zurueck gegeben. function has_right ($recht,$modul = \'\') { if ( !is_array($recht) AND !is_null($recht) ) { $recht = array ( $recht ); } if ( $_SESSION[\'authright\'] == -9 ) { return ( true ); } if ( !is_null($recht) ) { foreach ( $recht as $v ) { if ( ($v <= 0 AND $v >= $_SESSION[\'authright\'] ) OR (isset($_SESSION[\'authgrp\'][$v]) AND $_SESSION[\'authgrp\'][$v] === true) ) { return (true); } } } if ( !empty($modul) AND isset($_SESSION[\'authmod\'][$modul]) AND $_SESSION[\'authmod\'][$modul] === true ) { return ( true ); } return (false); } ### admin # wenn der 2. parameter weggelassen wird oder auf true gesetzt wird # dann wird ein login formular angezeigt, wenn der user kein admin ist. # wird der parameter auf false gesetzt wird das login formular nicht angezeigt. # erste parameter ist das menu objekt... function user_has_admin_right($menu, $sl = true) { if ($_SESSION[\'authright\'] <= -8) { # co leader... return true; } else { $uri_to_check1 = $menu->get(0); $uri_to_check2 = $menu->get(1); if (count($_SESSION[\'adminaccess\']) < 1 OR !loggedin()) { if ($sl === true) { if (!loggedin()) { $tpl = new tpl(\'user/login.htm\'); $tpl->set_out(\'WDLINK\', \'admin.php\', 0); } else { echo \'<strong>Keine Berechtigung!</strong> <a href=\"index.php\">Startseite</a>\'; } } return false; } elseif ((isset($_SESSION[\'adminaccess\'][$uri_to_check1]) AND $_SESSION[\'adminaccess\'][$uri_to_check1] == true) || (isset($_SESSION[\'adminaccess\'][$uri_to_check1 . \'-\' . $uri_to_check2]) AND $_SESSION[\'adminaccess\'][$uri_to_check1 . \'-\' . $uri_to_check2] == true) ) { return true; } elseif (count($_SESSION[\'adminaccess\']) > 0 AND loggedin()) { if ($sl === true) { foreach ($_SESSION[\'adminaccess\'] as $k => $v) { $x = $k; break; } $x = explode(\'-\', $x); $menu->set_url(0, $x[0]); if (isset($x[1])) { $menu->set_url(1, $x[1]); } } return true; } } return false; } function user_regist ($name, $mail, $pass) { global $allgAr, $lang; $erg = db_query(\"SELECT id FROM prefix_user WHERE name = BINARY \'\".$name.\"\'\"Zwinker; if (db_num_rows($erg) > 0) { return (false); } if ( $allgAr[\'forum_regist_user_pass\'] == 0 ) { $new_pass = genkeybeer; } else { $new_pass = $pass; } $passwordHash = user_pw_crypt($new_pass); $confirmlinktext = \'\'; # confirm insert in confirm tb not confirm insert in user tb if ( $allgAr[\'forum_regist_confirm_link\'] == 1 ) { # confirm link + text ... bit of shit put it in languages file $page = $_SERVER[\"HTTP_HOST\"].$_SERVER[\"SCRIPT_NAME\"]; $id = md5 (uniqid (rand())); $confirmlinktext = \"\\n\".$lang[\'registconfirm\'].\"\\n\\n\".sprintf($lang[\'registconfirmlink\'], $page, $id ); db_query(\"INSERT INTO prefix_usercheck (`check`,name,email,pass,datime,ak) VALUES (\'\".$id.\"\',\'\".$name.\"\',\'\".$mail.\"\',\'\".$passwordHash.\"\',NOW(),1)\"Zwinker; } else { db_query(\"INSERT INTO prefix_user (name,pass,recht,regist,llogin,email,status,opt_mail,opt_pm) VALUES(\'\".$name.\"\',\'\".$passwordHash.\"\',-1,\'\".time().\"\',\'\".time().\"\',\'\".$mail.\"\',1,1,1)\"Zwinker; $userid = db_last_id(); } $regmail = sprintf($lang[\'registemail\'],$name, $confirmlinktext, $name, $new_pass); icmail($mail,\'Anmeldung\',$regmail); # email an user return (true); } function user_remove($uid){ $row = @db_fetch_object(db_query(\"SELECT recht,avatar FROM prefix_user WHERE id = \".$uid)); if ( $uid <> 1 AND ($_SESSION[\'authid\'] == $uid OR $_SESSION[\'authid\'] == 1 OR (is_coadmin() AND $_SESSION[\'authright\'] < $row->recht))) { db_query(\"DELETE FROM prefix_user WHERE id = \".$uid); db_query(\"DELETE FROM prefix_userfields WHERE uid = \".$uid); db_query(\"DELETE FROM prefix_groupusers WHERE uid = \".$uid); db_query(\"DELETE FROM prefix_modulerights WHERE uid = \".$uid); db_query(\"DELETE FROM prefix_pm WHERE eid = \".$uid); db_query(\"DELETE FROM prefix_online WHERE uid = \".$uid); //Usergallery entfernen $sql = db_query(\"SELECT id,endung FROM prefix_usergallery WHERE uid = \".$uid); while( $r = db_fetch_object($sql) ){ @unlink(\"include/images/usergallery/img_$r->id.$r->endung\"Zwinker; @unlink(\"include/images/usergallery/img_thumb_$r->id.$r->endung\"Zwinker; } db_query(\"DELETE FROM prefix_usergallery WHERE uid = \".$uid); //Avatar @unlink($row->avatar); } } function sendpm ($sid,$eid,$ti,$te,$status = 0) { if (is_array($eid)) { db_query(\"INSERT INTO `prefix_pm` (`sid`,`eid`,`time`,`titel`,`txt`,`status`) \". \"SELECT \".$sid.\",`prefix_user`.`id`,\'\".time().\"\',\'\".$ti.\"\',\'\".$te.\"\',\".$status.\" FROM `prefix_user` WHERE `prefix_user`.`id` IN (\" . implode(\',\', $eid) . \"Zwinker\"Zwinker; } else { db_query(\"INSERT INTO `prefix_pm` (`sid`,`eid`,`time`,`titel`,`txt`,`status`) VALUES (\".$sid.\",\".$eid.\",\'\".time().\"\',\'\".$ti.\"\',\'\".$te.\"\',\".$status.\"Zwinker\"Zwinker; } } ?>
verwendete ilch Version: 1.1 P
betroffene Homepage: externer Link
Zuletzt modifiziert von Sub-Zero am 20.01.2014 - 12:05:20