Habe mir das CD_Profil_Mod_v2_1_PS3 instaliert und jetzt sehe ich im Admin bereich folgenden Fehler
Wer könnte mir den pasenden Code posten damit das jetzt auch im Adminbereich funktioniert ? Hier die Admin/user.php
<?php # Copyright by: Manuel # Support: www.ilch.de defined ('main') or die ( 'no direct access' ); defined ('admin') or die ( 'only admin access' ); function user_get_group_list ($uid) { $l = 'Mitglied in Gruppen:<br />'; $erg = db_query("SELECT prefix_groups.name FROM prefix_groupusers LEFT JOIN prefix_groups ON prefix_groups.id = prefix_groupusers.gid WHERE prefix_groupusers.uid = ".$uid); while ($r = db_fetch_assoc($erg)) { $l .= '- '.$r['name'].'<br />'; } return ($l); } function user_get_all_mod_list () { $l = ''; $erg = db_query("SELECT DISTINCT name FROM prefix_modules WHERE fright = 1 ORDER BY prefix_modules.name"); while ($r = db_fetch_assoc($erg)) { $x = $r['name']; $l .= '<th style="font-size: 9px; font-weight: normal;" title="'.$r['name'].'" valign="bottom">'.$x.'</th>'; } return ($l); } function user_get_mod_change_list ($uid) { $l = ''; $erg = db_query("SELECT prefix_modules.id, uid FROM prefix_modules LEFT JOIN prefix_modulerights ON prefix_modulerights.mid = prefix_modules.id AND prefix_modulerights.uid = ".$uid." WHERE fright = 1 ORDER BY prefix_modules.name"); while ($r = db_fetch_assoc($erg)) { if ($r['uid'] == '') { $c = ''; } else { $c = ' checked'; } $l .= '<td align="center"><input onChange="changeModulRecht('.$r['id'].','.$uid.')" type="checkbox" id="MN'.$r['id'].'-'.$uid.'" name="MN'.$r['id'].'-'.$uid.'" '.$c.' /></td>'; } return ($l); } function user_get_mod_list ($uid) { $l = 'Modulrechte:<br />'; $erg = db_query("SELECT DISTINCT module FROM prefix_modulerights WHERE uid = ".$uid); while ($r = db_fetch_assoc($erg)) { $l .= '- '.$r['module'].'<br />'; } return ($l); } function getfl($gid) { $liste = ''; $erg = db_query("SELECT view,name,reply,start,mods FROM prefix_forums WHERE view = ".$gid." OR reply = ".$gid." OR start = ".$gid." OR mods = ".$gid); while ($row = db_fetch_assoc($erg) ) { $v = ( $row['view'] == $gid ? 'sehen/lesen,' : '' ); $r = ( $row['reply'] == $gid ? 'antworten,' : '' ); $s = ( $row['start'] == $gid ? 'Themen starten,' : '' ); $m = ( $row['mods'] == $gid ? 'Moderieren,' : '' ); $liste .= $row['name'].'<span class="smalfont">('.$v.$r.$s.$m.')</span> '; } return($liste); } $um = $menu->get(1); switch($um) { default : $design = new design ( 'Admins Area', 'Admins Area', 2 ); $design->header(); $q = ''; if ( isset($_REQUEST['q']) ) { $q = escape($_REQUEST['q'],'string'); } $tpl = new tpl ( 'user/user', 1); $tpl->set('modlall', user_get_all_mod_list()); $tpl->set('anzmods', db_result(db_query("SELECT COUNT(*) FROM prefix_modules WHERE fright = 1"),0) ); $tpl->set_out('q',unescape($q),0); $q = str_replace('*','%',$q); if ( strpos($q,'%') === FALSE ) { $q = $q.'%'; } $limit = 15; // Limit $page = ($menu->getA(1) == 'p' ? $menu->getE(1) : 1 ); $MPL = db_make_sites ($page , "WHERE name LIKE '".$q."'" , $limit , '?user' , 'user' ); $anfang = ($page - 1) * $limit; $class = ''; $q = "SELECT name,recht,id FROM `prefix_user` WHERE name LIKE '".$q."' ORDER by recht,posts DESC LIMIT ".$anfang.",".$limit; $erg = db_query($q); while ($row = db_fetch_object($erg)) { if ($class == 'Cmite') { $class = 'Cnorm'; } else { $class = 'Cmite'; } $ar = array ( 'name' => $row->name, 'class' => $class, 'id' => $row->id, 'grouplist' => user_get_group_list($row->id), 'recht' => dblistee($row->recht,"SELECT id,name FROM prefix_grundrechte ORDER BY id ASC"), 'modslist' => user_get_mod_change_list($row->id), ); $tpl->set_ar_out($ar,1); } $tpl->set_out('MPL',$MPL,2); $design->footer(); break; # modulrechte fuer einen user aendern case 'modulrecht' : $uid = intval($menu->get(2)); $modul = intval($_REQUEST['modul']); $aktion = $_REQUEST['aktion']; if ( $aktion == 'eintragen' AND 0 == db_result(db_query("SELECT COUNT(*) FROM prefix_modulerights WHERE mid = '".$modul."' AND uid = ".$uid),0) ) { db_query("INSERT INTO prefix_modulerights (mid,uid) VALUES ('".$modul."',".$uid.")"); } elseif ($aktion == 'loeschen' AND 1 == db_result(db_query("SELECT COUNT(*) FROM prefix_modulerights WHERE mid = '".$modul."' AND uid = ".$uid),0) ) { db_query("DELETE FROM prefix_modulerights WHERE mid = '".$modul."' AND uid = ".$uid); } ?><html><head><script language="JavaScript" type="text/javascript"><!-- opener.location.reload(); function closeThisWindow() { opener.focus(); window.close(); } closeThisWindow() //--></script></head><body></body></html><?php break; # gruppen zugehoerigkeiten eines users aendern case 'gruppen' : $uid = $menu->get(2); if (isset($_POST['usergroups'])) { $erg = db_query("SELECT id FROM prefix_groups"); while($row = db_fetch_assoc($erg) ) { $ck = db_count_query("SELECT COUNT(uid) FROM prefix_groupusers WHERE uid = ".$uid." AND gid = ".$row['id']); if ( $ck == 0 AND isset ( $_POST['grprhave'][$row['id']][$uid] ) ) { db_query("INSERT INTO prefix_groupusers (uid,gid,fid) VALUES ( ".$uid.", ".$row['id'].", 3 )"); } elseif ( $ck == 1 AND !isset ( $_POST['grprhave'][$row['id']][$uid] ) ) { db_query("DELETE FROM prefix_groupusers WHERE uid = ".$uid." AND gid = ".$row['id']); } } } $user_name = db_result(db_query("SELECT name FROM prefix_user WHERE id = ".$uid),0); $tpl = new tpl ( 'user/gruppen', 1); $tpl->set_ar_out( array('username'=>$user_name,'userid'=>$uid),0); $class = 'Cnorm'; $erg = db_query("SELECT name,id FROM prefix_groups"); while($row = db_fetch_assoc($erg) ) { $ck = db_count_query("SELECT COUNT(uid) FROM prefix_groupusers WHERE uid = ".$uid." AND gid = ".$row['id']); $row['ck'] = ( $ck == 0 ? '' : 'checked' ); $class = ($class == 'Cnorm' ? 'Cmite' : 'Cnorm' ); $row['class'] = $class; $tpl->set_ar_out($row,1); } $tpl->out(2); break; # das recht eines users aendern case 'changeRecht' : $uid = $menu->get(2); $altes_recht = db_result(db_query("SELECT recht FROM prefix_user WHERE id = ".$uid),0); $neues_recht = escape($_GET['newr'], 'integer'); if (($neues_recht > $_SESSION['authright'] AND $altes_recht > $_SESSION['authright']) OR ($_SESSION['authid'] == 1 AND $uid <> 1)) { $q = "UPDATE prefix_user SET recht = ".$neues_recht." WHERE id = ".$uid; db_query($q); } ?><html><head><script language="JavaScript" type="text/javascript"><!-- function closeThisWindow() { opener.focus(); window.close(); } closeThisWindow() //--></script></head><body></body></html><?php break; # details eines users anzeigen case 1 : $design = new design ( 'Admins Area', 'Admins Area', 2 ); $design->header(); if ( isset ($_REQUEST['uID'])) { $uid = $_REQUEST['uID']; } else {$uid = $menu->get(2); } $erg = db_query("SELECT name,email,id,recht,wohnort,homepage,aim,msn,icq,yahoo,status,staat,gebdatum,sig,opt_pm,opt_pm_popup,opt_mail,geschlecht,spezrank,avatar FROM prefix_user WHERE id = '".$uid."'"); if ( db_num_rows($erg) == 0 ) { die ('Fehler: Username nicht gefunden <a href="?user">zurück</a>'); } else { $row = db_fetch_assoc($erg); $tpl = new tpl ( 'user/details', 1); $row['recht'] = dbliste ( $row['recht'] , $tpl, 'recht', "SELECT id,name FROM prefix_grundrechte ORDER BY id ASC"); $row['staat'] = '<option></option>'.arliste ( $row['staat'] , get_nationality_array() , $tpl , 'staat' ); $row['spezrank'] = '<option></option>'.dbliste ( $row['spezrank'], $tpl, 'spezrank', "SELECT id, bez FROM prefix_ranks WHERE spez = 1" ); $row['geschlecht0'] = ( $row['geschlecht'] < 1 ? 'checked' : '' ); $row['geschlecht1'] = ( $row['geschlecht'] == 1 ? 'checked' : '' ); $row['geschlecht2'] = ( $row['geschlecht'] == 2 ? 'checked' : '' ); if ( $row['status'] == 1 ) { $row['status1'] = 'checked'; $row['status0'] = ''; } else { $row['status1'] = ''; $row['status0'] = 'checked'; } if ( $row['opt_mail'] == 1 ) { $row['opt_mail1'] = 'checked'; $row['opt_mail0'] = ''; } else { $row['opt_mail1'] = ''; $row['opt_mail0'] = 'checked'; } if ( $row['opt_pm'] == 1 ) { $row['opt_pm1'] = 'checked'; $row['opt_pm0'] = ''; } else { $row['opt_pm1'] = ''; $row['opt_pm0'] = 'checked'; } if ( $row['opt_pm_popup'] == 1 ) { $row['opt_pm_popup1'] = 'checked'; $row['opt_pm_popup0'] = ''; } else { $row['opt_pm_popup1'] = ''; $row['opt_pm_popup0'] = 'checked'; } if ( @file_exists($row['avatar']) ) { $row['avatar'] = '<img src="'.$row['avatar'].'" border="0" /><br />' ; } else { $row['avatar'] = ''; } $tpl->set_ar_out ($row,0); profilefields_change ( $row['id'] ); $tpl->out(1); } $design->footer(); break; # details des users aendern case 2 : $design = new design ( 'Admins Area', 'Admins Area', 2 ); $design->header(); $changeok = true; $uid = escape($_POST['uID'], 'integer'); $altes_recht = db_result(db_query("SELECT recht FROM prefix_user WHERE id = ".$uid),0); $neues_recht = escape($_POST['urecht'], 'integer'); if (($neues_recht <= $_SESSION['authright'] OR $altes_recht <= $_SESSION['authright']) AND $_SESSION['authid'] > 1) { $changeok = false; } if ( $changeok ) { if (isset($_POST['userdel'])) { user_remove($uid); wd ('?user','User wurde erfolgreich gelöscht'); } else { $abf = "SELECT * FROM prefix_user WHERE id = '".$uid."'"; $erg = db_query($abf); $row = db_fetch_object($erg); if (isset($_POST['passw'])) { $newPass = genkey (8); $newPassMD5 = md5($newPass); icmail ($row->email , 'neues Password' , "Hallo\n\nDein Passwort wurde soeben von einem Administrator geändert es ist nun:\n\n$newPass\n\nGruß der Administrator"); db_query('UPDATE `prefix_user` SET pass = "' . $newPassMD5 . '" WHERE id = "' . escape($_POST['uID'], 'integer') . '"'); } if ( !empty($_POST['npassw1']) AND !empty($_POST['npassw2'])) { if ($_POST['npassw1'] == $_POST['npassw2']) { $newpassword = $_POST['npassw1']; $newpw = md5($_POST['npassw1']); db_query('UPDATE `prefix_user` SET pass = "' . $newpw . '" WHERE id = "' . escape($_POST['uID'], 'integer') . '"'); icmail ($row->email , 'Neues Passwort' , "Hallo\n\nDein Passwort wurde soeben von einem Administrator geändert es ist nun:\n\n$newpassword\n\nGruß der Administrator"); } } # avatar speichern START $avatar_sql_update = ''; if ( !empty ( $_FILES['avatarfile']['name'] ) ) { $file_tmpe = $_FILES['avatarfile']['tmp_name']; $rile_type = ic_mime_type ($_FILES['avatarfile']['tmp_name']); $file_type = $_FILES['avatarfile']['type']; $file_size = $_FILES['avatarfile']['size']; $fmsg = $lang['avatarisnopicture']; $size = @getimagesize ($file_tmpe); $endar = array (1 => 'gif', 2 => 'jpg', 3 => 'png'); if ( ($size[2] == 1 OR $size[2] == 2 OR $size[2] == 3) AND $size[0] > 10 AND $size[1] > 10 AND substr ( $file_type , 0 , 6 ) == 'image/' AND substr ( $rile_type , 0 , 6 ) == 'image/' ) { $endung = $endar[$size[2]]; $breite = $size[0]; $hoehe = $size[1]; $neuer_name = 'include/images/avatars/'.$uid.'.'.$endung; @unlink (db_result(db_query("SELECT avatar FROM prefix_user WHERE id = ".$uid),0)); move_uploaded_file ( $file_tmpe , $neuer_name ); @chmod($neuer_name, 0777); $avatar_sql_update = ', avatar = "'.$neuer_name.'"'; $fmsg = $lang['pictureuploaded']; } } elseif ( isset($_POST['avatardel']) ) { $fmsg = $lang['picturedelete']; @unlink (db_result(db_query("SELECT avatar FROM prefix_user WHERE id = ".$uid),0)); $avatar_sql_update = ', avatar = ""'; } # avatar speichern ENDE profilefields_change_save ( escape($_POST['uID'], 'integer') ); $usaName1 = escape($_POST['usaName1'], 'string'); $email = escape($_POST['email'], 'string'); $homepage = escape($_POST['homepage'], 'string'); $wohnort = escape($_POST['wohnort'], 'string'); $icq = escape($_POST['icq'], 'string'); $msn = escape($_POST['msn'], 'string'); $yahoo = escape($_POST['yahoo'], 'string'); $aim = escape($_POST['aim'], 'string'); $staat = escape($_POST['staat'], 'string'); $spezrank = escape($_POST['spezrank'], 'integer'); $geschlecht = escape($_POST['geschlecht'], 'integer'); $status = escape($_POST['status'], 'integer'); $opt_mail = escape($_POST['opt_mail'], 'integer'); $opt_pm = escape($_POST['opt_pm'], 'integer'); $opt_pm_popup = escape($_POST['opt_pm_popup'], 'integer'); $gebdatum = escape($_POST['gebdatum'], 'string'); $sig = escape($_POST['sig'], 'string'); //Name im Forum ändern if ($_POST['forumname'] == 'on') { $oldname = db_count_query("SELECT name FROM `prefix_user` WHERE id =".$uid); if ($oldname != $usaName1) { db_query("UPDATE `prefix_posts` SET erst = '$usaName1' WHERE erstid = ".$uid); db_query("UPDATE `prefix_topics` SET erst = '$usaName1' WHERE erst = '$oldname'"); } } db_query('UPDATE prefix_user SET name = "'.$usaName1.'", recht = "'.$neues_recht.'", email = "'.$email.'", homepage = "'.$homepage.'", wohnort = "'.$wohnort.'", icq = "'.$icq.'", msn = "'.$msn.'", yahoo = "'.$yahoo.'", aim = "'.$aim.'", staat = "'.$staat.'", spezrank = "'.$spezrank.'", geschlecht = "'.$geschlecht.'", status = "'.$status.'", opt_mail = "'.$opt_mail.'", opt_pm = "'.$opt_pm.'", opt_pm_popup = "'.$opt_pm_popup.'", gebdatum = "'.$gebdatum.'", sig = "'.$sig.'" '.$avatar_sql_update.' WHERE id = "'.$uid.'"'); } } wd('admin.php?user-1-'.$uid,'Das Profil wurde erfolgreich geaendert',2); $design->footer(); break; # mal kurz nen neuen user anlegen case 'createNewUser' : $msg = ''; if (!empty($_POST['name']) AND !empty($_POST['pass']) AND !empty($_POST['email'])) { $_POST['name'] = escape($_POST['name'], 'string'); $_POST['recht'] = escape($_POST['recht'], 'integer'); $_POST['email'] = escape($_POST['email'], 'string'); $erg = db_query("SELECT id FROM prefix_user WHERE name = BINARY '".$_POST['name']."'"); if ( db_num_rows($erg) > 0 ) { $msg = 'Der Name ist leider schon vorhanden!'; } else { $new_pass = $_POST['pass']; $md5_pass = md5($new_pass); db_query("INSERT INTO prefix_user (name,pass,recht,regist,llogin,email) VALUES('".$_POST['name']."','".$md5_pass."',".$_POST['recht'].",'".time()."','".time()."','".$_POST['email']."')"); $userid = db_last_id(); db_query("INSERT INTO prefix_userfields (uid,fid,val) VALUES (".$userid.",2,'1')"); db_query("INSERT INTO prefix_userfields (uid,fid,val) VALUES (".$userid.",3,'1')"); if (isset($_POST['info']) ) { $page = $_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"]; $page = str_replace('admin.php','index.php',$page); $tpl = new tpl ('user/new_user_email', 1); $tpl->set('name', $_POST['name']); $tpl->set('pass', $_POST['pass']); $tpl->set('page', $page); $txt = $tpl->get(0); unset($tpl); icmail ( $_POST['email'], 'Admin hat dich angelegt', $txt ); } $msg = 'Benutzer angelegt <a href="javascript:closeThisWindow()">Fenster schließen</a>'; } } $pass = ''; $email = ''; $recht= ''; if (isset($_POST['pass'])) { $pass = $_POST['pass']; } if (isset($_POST['email'])) { $email = $_POST['email']; } if (isset($_POST['recht'])) { $recht = $_POST['recht']; }else{$recht = '-1';} $tpl = new tpl ('user/new_user', 1); $tpl->set('msg',$msg); $tpl->set('pass',$pass); $tpl->set('email',$email); $tpl->set('recht',dblistee($recht,"SELECT id,name FROM prefix_grundrechte ORDER BY id ASC")); $tpl->out(0); break; # einen user komplett loeschen case 'deleteUser' : $uid = $menu->get(2); if ( $uid <> 1 ) { user_remove($uid); ?><html><head><script language="JavaScript" type="text/javascript"><!-- function closeThisWindow() { opener.location.reload(); opener.focus(); window.close(); } closeThisWindow() //--></script></head><body></body></html><?php } break; #Benutzerkonto stellen, warum? weils Spaß macht case 'ctrl_user' : $uid = $menu->get(2); $erg = db_query("SELECT name,id,recht,pass,llogin FROM prefix_user WHERE id = BINARY '".$uid."'"); if ( db_num_rows($erg) == 1 ) { debug ('user gefunden'); $row = db_fetch_assoc($erg); if ( $row['recht'] != '-9' ) { 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()."'"); setcookie($_SESSION['authsess'], $row['id'].'='.$row['pass'] , time() + 31104000, "/" ); user_set_grps_and_modules(); $relink = './index.php'; $wdtext = 'OK, ändere Benutzerkennung, einen Moment bitte'; wd ($relink, $wdtext); return (true); } else { $relink = './admin.php?user'; $wdtext = 'Dieser User ist nicht Übernehmbar'; wd ($relink, $wdtext); } } break; } ?>
betroffene Homepage: externer Link
Zuletzt modifiziert von xRebellx am 23.02.2013 - 08:08:32