⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pw_ajax.php

📁 强大的PHP内容管理系统尽量不要让站长把时间都花费在为您修正说明上。压缩包解压
💻 PHP
📖 第 1 页 / 共 3 页
字号:
		);
		writelog($log);
		if($foruminfo['allowhtm'] && $page==1){
			require_once(R_P.'require/template.php');
		}
		echo "success\t";
		$ifmark = explode("\t",$ifmark);
		foreach($ifmark as $key=>$value){
			echo "<li>$value</li>";
		}
		ajax_footer();
	} else{
		$groupid=='guest' && Showmsg('not_login');
		InitGP(array('pid','page','ifmsg','atc_content'));
		if(!is_numeric($pid)){
			$pw_tmsgs = GetTtable($tid);
			$atc = $db->get_one("SELECT t.fid,t.postdate,t.authorid,t.author,t.subject,tm.ifmark FROM pw_threads t LEFT JOIN $pw_tmsgs tm ON tm.tid=t.tid WHERE t.tid='$tid'");
		} else{
			$pw_posts = GetPtable('N',$tid);
			$atc = $db->get_one("SELECT fid,postdate,authorid,author,ifmark,subject,content FROM $pw_posts WHERE pid='$pid'");
		}
		Add_S($atc);
		if(strpos($atc['ifmark'],"(".$windid.")")===false){
			Showmsg('have_not_showping');
		}
		$fid = $atc['fid'];
		$foruminfo = $db->get_one("SELECT name,f_type,style,password,allowvisit,allowhtm,cms,forumadmin,fupadmin FROM pw_forums WHERE fid='$fid' AND type<>'category'");
		!$foruminfo && Showmsg('data_error');
		wind_forumcheck($foruminfo);

		$markdb = explode("\t",$atc['ifmark']);
		$cid = '';
		foreach($markdb as $key=>$mark){
			if(strpos($mark,"(".$windid.")")!==false){
				$credit = substr($mark,0,strpos($mark,":"));
				list($addpoint) = explode("(",substr($mark,strpos($mark,":")+1));
				$addpoint = (int) $addpoint;
				unset($markdb[$key]);
				foreach($cType as $k=>$v){
					if($v==$credit){
						$cid = $k;break;
					}
				}
				break;
			}
		}
		!$cid && Showmsg('all_credit_error');
		$addpoint = $addpoint>0 ? -$addpoint : abs($addpoint);
		UserCredit($atc['authorid'],$cid,'set',$addpoint);

		$ifmark = implode("\t",$markdb);
		if(!is_numeric($pid)){
			$db->update("UPDATE pw_threads SET ifmark=ifmark+'$addpoint' WHERE tid='$tid'");
			$db->update("UPDATE $pw_tmsgs SET ifmark='$ifmark' WHERE tid='$tid'");
		} else{
			$db->update("UPDATE $pw_posts SET ifmark='$ifmark' WHERE pid='$pid'");
		}
		$atc_content = Char_cv($atc_content);
		if($db_charset!='utf-8'){
			$atc_content = ajax_convert($atc_content,$db_charset);
		}
		!$atc['subject'] && $atc['subject'] = substrs($atc['content'],35);
		if($ifmsg){
			$msg=array(
				$atc['author'],
				$winduid,
				'delping_title',
				$timestamp,
				'delping_content',
				'',
				$windid,
				'fid'		=> $atc['fid'],
				'tid'		=> $tid,
				'subject'	=> $atc['subject'],
				'postdate'	=> get_date($atc['postdate']),
				'forum'		=> strip_tags($foruminfo['name']),
				'affect'    => "$credit:$addpoint",
				'admindate'	=> get_date($timestamp),
				'reason'	=> $atc_content
			);
			writenewmsg($msg,1);
		}
		require_once(R_P.'require/writelog.php');
		$log = array(
			'type'      => 'credit',
			'username1' => $atc['author'],
			'username2' => $windid,
			'field1'    => $atc['fid'],
			'field2'    => '',
			'field3'    => '',
			'descrip'   => 'creditdel_descrip',
			'timestamp' => $timestamp,
			'ip'        => $onlineip,
			'tid'		=> $tid,
			'forum'		=> strip_tags($foruminfo['name']),
			'subject'	=> $atc['subject'],
			'affect'	=> "$name:$addpoint",
			'reason'	=> $atc_content
		);
		writelog($log);

		if($foruminfo['allowhtm'] && $page==1){
			require_once(R_P.'require/template.php');
		}
		echo "success\t";
		foreach($markdb as $key=>$value){
			echo "<li>$value</li>";
		}
		ajax_footer();
	}
} elseif($action=='dig'){
	!$_G['dig'] && Showmsg("dig_right");
	$read = $db->get_one("SELECT t.author,t.subject,t.dig,f.forumset FROM pw_threads t LEFT JOIN pw_forumsextra f USING(fid) WHERE tid='$tid'");
	!$read && Showmsg('data_error');
	$forumset = unserialize($read['forumset']);
	!$forumset['dig'] && Showmsg('forum_dig_allow');
	$rt  = $db->get_one("SELECT uid,digtid FROM pw_memberinfo WHERE uid='$winduid'");
	Add_S($rt);
	if(strpos(",$rt[digtid],",",$tid,")===false){
		$read['dig']++;
		$db->update("UPDATE pw_threads SET dig=dig+1 WHERE tid='$tid'");
		if($rt){
			strlen($rt['digtid'])>2000 && $rt['digtid'] = '';
			$rt['digtid'] .= ($rt['digtid'] ? ',' : '').$tid;
			$db->update("UPDATE pw_memberinfo SET digtid='$rt[digtid]' WHERE uid='$winduid'");
		} else{
			$db->update("INSERT INTO pw_memberinfo (uid,digtid) VALUES('$winduid','$tid')");
		}
		require_once(R_P.'require/posthost.php');
		PostHost("http://push.phpwind.com/push.php?type=dig&url=".rawurlencode("$db_bbsurl/read.php?tid=$tid")."&tocharset=$db_charset&title=".rawurlencode($read['subject'])."&bbsname=".rawurlencode($db_bbsname),"");
		Showmsg('dig_success');
	} else{
		Showmsg("dig_limit");
	}
} elseif($action=='extend'){
	InitGP(array('type'));
	if($type=='pwcode'){
		$code  = array();
		$query = $db->query("SELECT * FROM pw_windcode");
		while($rt = $db->fetch_array($query)){
			$rt['descrip'] = str_replace("\n","|",$rt['descrip']);
			$code[] = $rt;
		}
	} else{
		@include_once(D_P.'data/bbscache/setform.php');
		$id = (int)GetGP('id');
		$setform = array();
		if(isset($setformdb[$id])){
			$setform = $setformdb[$id];
		}
	}
	require_once PrintEot('ajax');ajax_footer();
} elseif($action=='sharelink'){
	!$db_ifselfshare && Showmsg("sharelink_colse");
	if(!$_POST['step']){
		require_once PrintEot('ajax');ajax_footer();
	} else{
		InitGP(array('linkname','linkurl','linkdescrip','linklogo'),'P',1);
		(!$linkname || !$linkurl) && Showmsg('sharelink_link_empty');
		!$linkdescrip && $linkdescrip = '';
		!$linklogo && $linklogo = '';
		$linkurl = strtolower($linkurl);
		substr($linkurl,0,7)!="http://" && Showmsg('sharelink_link_error');
		$rs=$db->get_one("SELECT sid FROM pw_sharelinks WHERE username='$windid'");
		$rs && Showmsg('sharelink_apply_limit');
		if($db_charset!='utf-8'){
			$linkname = ajax_convert($linkname,$db_charset);
			$linkdescrip = ajax_convert($linkdescrip,$db_charset);
		}
		$db->update("INSERT INTO pw_sharelinks(name,url,descrip,logo,ifcheck,username) VALUES('$linkname','$linkurl','$linkdescrip','$linklogo','0','$windid')");
		Showmsg("sharelink_success");
	}
} elseif($action=='showface'){
	$img=@opendir("$imgdir/face");
	$imagearray=@readdir($img);

	$imgselect = "<span onClick=\"showimage('$imgpath','none.gif')\" class=\"fl face\"><img src='$imgpath/face/none.gif' width=\"50\" height=\"50\"></span>";
	while($imagearray=@readdir($img)){
		if($imagearray!="." && $imagearray!=".." && $imagearray!="" && $imagearray!="none.gif" && eregi("\.(gif|jpg|png|bmp)$",$imagearray)){
			if($imagearray==$iconarray[0]){
				$imgselect.= "<span onClick=\"showimage('$imgpath','$imagearray')\" class=\"fl face\"><img src='$imgpath/face/$imagearray' width=\"50\" height=\"50\"></span>";
			} else{
				$imgselect.="<span onClick=\"showimage('$imgpath','$imagearray')\" class=\"fl face\"><img src='$imgpath/face/$imagearray' width=\"50\" height=\"50\"></span>";
			}
		}
	}
	@closedir($img);
	require_once PrintEot('ajax');ajax_footer();
} elseif($action=='newrp'){
	if($db_replysitemail && $winddb['newrp']){
		include_once(D_P.'data/bbscache/forum_cache.php');
		$rt=$db->get_one("SELECT replyinfo FROM pw_memberinfo WHERE uid='$winduid'");
		$rt['replyinfo']=substr($rt['replyinfo'],1,-1);
		$replydb=array();
		$query=$db->query("SELECT tid,fid,subject,postdate,lastpost FROM pw_threads WHERE tid IN($rt[replyinfo]) LIMIT 20");
		if($db->num_rows($query)==0){
			Showmsg('newrp_error');
		}
		while($rt=$db->fetch_array($query)){
			$rt['subject']=substrs($rt['subject'],55);
			$rt['fname']=$forum[$rt['fid']]['name'];
			$rt['lastpost']=get_date($rt['lastpost'],'Y-m-d');
			$replydb[]=$rt;
		}
		require_once PrintEot('ajax');ajax_footer();
	} else{
		Showmsg('newrp_error');
	}
} elseif($action=='delnewrp'){
	!$tid && Showmsg('data_error');
	$rt = $db->get_one("SELECT replyinfo FROM pw_memberinfo WHERE uid='$winduid'");
	$rt['replyinfo'] = str_replace(",$tid,",',',$rt['replyinfo']);
	$rt['replyinfo'] == ',' && $rt['replyinfo'] = '';
	$db->update("UPDATE pw_memberinfo SET replyinfo='$rt[replyinfo]' WHERE uid='$winduid'");
	$db->update("UPDATE pw_threads SET ifmail='0' WHERE tid='$tid'");
	if($winddb['newrp'] && !$rt['replyinfo']){
		$db->update("UPDATE pw_members SET newrp='0' WHERE uid='$winduid'");
	}
	Showmsg('operate_success');
} elseif($action=='addfriend'){
	$touid = (int)GetGP('touid');
	if($touid==$winduid){
		Showmsg('friend_selferror');
	}
	$rt = $db->get_one("SELECT uid,username FROM pw_members WHERE uid='$touid'");
	if(!$rt){
		$errorname = $touid;
		Showmsg('user_not_exists');
	}
	$rs = $db->get_one("SELECT uid FROM pw_friends WHERE uid='$winduid' AND friendid='$rt[uid]'");
	if($rs){
		Showmsg('friend_already_exists');
	}
	$db->update("INSERT INTO pw_friends(uid,friendid,joindate) VALUES('$winduid','$rt[uid]','$timestamp')");
	Showmsg('friend_update_success');
} elseif($action == 'showsmile'){
	InitGP(array('subjectid','page','type'));
	$u         = "http://dm.phpwind.net/misc";
	$subjectid = (int)$subjectid;
	(!is_numeric($page) || $page<1) && $page = 1;
	$s         = '300.xml';
	if($type == 'general'){
		$s = $subjectid ? $subjectid.'_'.$page.'.xml' : '300.xml';
	} elseif($type == 'magic'){
		$s = $subjectid ? $subjectid.'_'.$page.'.xml' : '200.xml';
	}
	$cachefile = D_P."data/bbscache/myshow_{$s}";
	if(!file_exists($cachefile) || $timestamp - @filemtime($cachefile) > 43200){
		$data = '';
		if($subjectid){
			$url = $u.'/list/'.$s;
		} else{
			$url = $u.'/menu/'.$s;
		}
		if(ini_get('allow_url_fopen')){
			if(function_exists('file_get_contents')){
				$data = @file_get_contents($url);
			} else{
				$data = @implode('',@file($url));
			}
		}
		if($data && strpos($data,'<?xml')===0){
			writeover($cachefile,$data);
		}
	}
	header("Content-Type: text/xml; charset=UTF-8");
	$data = readover($cachefile);
	echo $data;
	exit;
} elseif($action == 'honor'){
	!$gp_allowhonor && Showmsg('undefined_action');
	if(!$_POST['step']){
		require_once PrintEot('ajax');ajax_footer();
	} else{
		InitGP(array('content'),'P',1);
		if($db_charset!='utf-8'){
			$content = ajax_convert($content,$db_charset);
		}
		$content = str_replace("\n",'',$content);
		strlen($content)>100 && $content = substrs($content,100);
		$db->update("UPDATE pw_members SET honor='$content' WHERE uid='$winduid'");
		echo "success\t".stripslashes($content);ajax_footer();
	}
} elseif($action == 'readlog'){
	$readlog = explode(',',GetCookie('readlog'));
	@krsort($readlog);
	$tids = '';
	$i = 0;
	foreach($readlog as $key=>$value){
		if(is_numeric($value)){
			$tids .= ($tids ? ',' : '').$value;
			if(++$i>9) break;
		}
	}
	Cookie('readlog',",$tids,");
	!$tids && Showmsg('data_error');
	include_once(D_P.'data/bbscache/forum_cache.php');
	$readb = array();
	$query = $db->query("SELECT t.tid,t.fid,t.subject,t.author,t.authorid,f.f_type,f.password,f.allowvisit FROM pw_threads t LEFT JOIN pw_forums f USING(fid) WHERE t.tid IN($tids)");
	while($rt = $db->fetch_array($query)){
		if(empty($rt['password']) && $rt['f_type']<>'hidden' && (empty($rt['allowvisit']) || allowcheck($rt['allowvisit'],$groupid,$winddb['groups']))){
			$readb[] = $rt;
		}
	}
	require_once PrintEot('ajax');ajax_footer();
} elseif($action == 'threadlog'){
	$threadlog = explode(',',GetCookie('threadlog'));
	@krsort($threadlog);
	$fids = ',';
	$i = 0;
	foreach($threadlog as $key=>$value){
		if(is_numeric($value)){
			$fids .= $value.',';
			if(++$i>9) break;
		}
	}
	Cookie('threadlog',$fids);
	include_once(D_P.'data/bbscache/forum_cache.php');
	$threaddb = array();
	foreach($forum as $key=>$value){
		if(in_array($key,$threadlog)){
			$threaddb[$key] = $value['name'];			
		}
	}
	require_once PrintEot('ajax');ajax_footer();
}
function getfavor($tids){
	$tids=explode('|',$tids);
	$tiddb=array();
	foreach($tids as $key=>$t){
		if($t){
			$v=explode(',',$t);
			foreach($v as $k=>$v1){
				$tiddb[$key][$v1]=$v1;
			}
		}
	}
	return $tiddb;
}
function makefavor($tiddb){
	$newtids=$ex='';
	$k=0;
	ksort($tiddb);
	foreach($tiddb as $key=>$val){
		$new_tids='';
		rsort($val);
		if($key!=$k){
			$s=$key-$k;
			for($i=0;$i<$s;$i++){
				$newtids .='|';
			}
		}
		foreach($val as $k=>$v){
			is_numeric($v) && $new_tids .= $new_tids ? ','.$v : $v;
		}
		$newtids .= $ex.$new_tids;
		$k=$key+1;
		$ex='|';
	}
	return $newtids;
}
?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -