我提到的那几行有错误,但我不知道是什么。这句话有些不合逻辑,但我没看出来。我说过,这条线是一系列的地方。
Line: 1497
'.(($this->getLikes()) ? '<div class="sidebar-list">'.$LNG['likes'].': <a href="'.$this->url.'/index.php?a=profile&u='.$profile['username'].'&r=likes"><strong>'.$this->getLikes().' '.$LNG['messages'].'</strong></a></div>' : '').'
线:3117
function getLikes($start, $type) {
global $LNG;
// Type 0: Return the likes count
// Type 1: Return the liked posts
if($type) {
if($start == 0) {
$start = '';
} else {
$start = 'AND `likes`.`id` < '''.$this->db->real_escape_string($start).'''';
}
$query = sprintf("SELECT
`likes`.`id` as `like_id`, `likes`.`post` as `like_post`, `likes`.`by` as `like_by`, `likes`.`time` as `time`,
`messages`.`id` as `id`, `messages`.`message` as `message`, `messages`.`type` as `type`, `messages`.`value` as `value`,
`users`.`username` as `username`, `users`.`first_name` as `first_name`, `users`.`last_name` as `last_name`, `users`.`image` as `image`
FROM `likes`,`messages`,`users` WHERE `likes`.`by` = '%s' AND `likes`.`post` = `messages`.`id` AND `messages`.`uid` = `users`.`idu` AND `messages`.`public` = 1 %s ORDER BY `likes`.`time` DESC LIMIT %s", $this->profile_data['idu'], $start, ($this->per_page + 1));
$getLikes = $this->db->query($query);
// Declare the rows array
$rows = array();
while($row = $getLikes->fetch_assoc()) {
// Store the result into the array
$rows[] = $row;
}
// Decide whether the load more will be shown or not
if(array_key_exists($this->per_page, $rows)) {
$loadmore = 1;
// Unset the last array element because it's not needed, it's used only to predict if the Load More Messages should be displayed
array_pop($rows);
}
// Start the output
foreach($rows as $value) {
$time = $value['time']; $b = '';
if($this->time == '0') {
$time = date("c", strtotime($value['time']));
} elseif($this->time == '2') {
$time = $this->ago(strtotime($value['time']));
} elseif($this->time == '3') {
$date = strtotime($value['time']);
$time = date('Y-m-d', $date);
$b = '-standard';
}
$output .= '<div class="message-container"><div class="message-content"><div class="message-inner">
<a href="'.$this->url.'/index.php?a=profile&u='.$this->profile_data['username'].'">'.realName($this->profile_data['username'], $this->profile_data['first_name'], $this->profile_data['last_name']).'</a> '.sprintf($LNG['x_liked_y_post'], '<a href="'.$this->url.'/index.php?a=profile&u='.$value['username'].'"><div class="like_btn like_btn_extended" style="float: none;"><img src="'.$this->url.'/thumb.php?src='.$value['image'].'&w=25&h=25&t=a" /></div>'.realName($value['username'], $value['first_name'], $value['last_name']).'</a>', $this->url.'/index.php?a=post&m='.$value['like_post']).' - <span class="timeago'.$b.'" title="'.$time.'" style="float: none;">'.$time.'</span>
'.((!empty($value['message'])) ? '<div class="like_text_snippet">'.($this->parseMessage(substr($value['message'], 0, 60))).'...</div>' : '').'</div></div></div>';
}
// Display the load more button
if($loadmore) {
$output .= '<div class="message-container" id="more_messages">
<div class="load_more"><a onclick="loadLikes('.$value['like_id'].', '''.$this->profile_data['idu'].''', '''.$this->profile_data['username'].''')">'.$LNG['view_more_messages'].'</a></div>
</div>';
}
return $output;
} else {
$query = $this->db->query(sprintf("SELECT count(`likes`.`id`) FROM `likes`,`messages` WHERE `likes`.`by` = '%s' AND `likes`.`post` = `messages`.`id` AND `messages`.`public` = '1'", $this->profile_data['idu']));
// Store the array results
$result = $query->fetch_array();
// Return the likes value
return $result[0];
}
}
意思很清楚。在函数的定义中有:
getLikes($start, $type)
所以你总是需要传递两个参数给函数
代替
'.(($this->getLikes()) ? '<div class="sidebar-list">'.$LNG['likes'].': <a href="'.$this->url.'/index.php?a=profile&u='.$profile['username'].'&r=likes"><strong>'.$this->getLikes().' '.$LNG['messages'].'</strong></a></div>' : '').'
你应该这样写:
'.(($this->getLikes($something1, $something2)) ? '<div class="sidebar-list">'.$LNG['likes'].': <a href="'.$this->url.'/index.php?a=profile&u='.$profile['username'].'&r=likes"><strong>'.$this->getLikes($something1, $something2).' '.$LNG['messages'].'</strong></a></div>' : '').'