本文整理汇总了PHP中Thread::queryPosts方法的典型用法代码示例。如果您正苦于以下问题:PHP Thread::queryPosts方法的具体用法?PHP Thread::queryPosts怎么用?PHP Thread::queryPosts使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Thread
的用法示例。
在下文中一共展示了Thread::queryPosts方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: show
public static function show($thread_id)
{
$thread = new Thread();
$error_message = "";
$textarea_content = "";
$isMobile = Utils::is_mobile();
// comment
if (!empty($_POST)) {
// insert post into thread
$thread->initWithId($thread_id);
$author_id = $_SESSION[KEY_SESSION][Account::KEY_ID];
$title = $thread->getTitle();
$update_time = Utils::getCurrentTime();
$update_date = Utils::getCurrentDate();
$latest_update = time();
$content = $_POST["content"];
$content_len = 0;
if ($isMobile) {
$content = preg_replace("/<br \\/>|<br\\/>|<br>/", '', $content);
$content = preg_replace("/\r\n|\r|\n/", '<br />', $content);
$content_len = strlen($content);
} else {
$content_len = Utils::textLength($content);
}
if ($content_len > 5) {
// post request success
Post::create($thread_id, $title, $content, $update_date, $update_time, $author_id, "text");
header("Location: /thread/" . $thread_id);
die;
} else {
// post request fail
$error_message = "コンテンツ文字数は必ず5文字以上でなければいけません。";
$textarea_content = $content;
}
// end of post comment
} else {
// get request
$thread_id = $_GET[KEY_TARGET];
$thread->initWithId($thread_id);
}
if ($isMobile) {
foreach ($thread->getAllPosts() as $p) {
if (Utils::appletTagFound($p->getContent())) {
// if applet tag is found, redirect to unable_to_access
$content = ROOT . "common/no-available-applet.php";
include VIEWS_PATH . "private-nav.php";
include VIEWS_PATH . "thread/thread.php";
die;
}
}
}
// number of thread show per page. Current is 10
$show = 10;
if (empty($_GET["page"])) {
$offset = 0;
$page = 1;
} else {
$page = abs(intval($_GET["page"]));
if ($page == 0) {
$page = 1;
}
$offset = ($page - 1) * $show;
}
$showPageCallback = function ($i, $current_page) {
if ($i == $current_page) {
echo "<a class='anchor' href='/thread/{$_GET[KEY_TARGET]}/page/{$i}'><span class='page_number current'>{$i}</span></a>";
} else {
echo "<a class='anchor' href='/thread/{$_GET[KEY_TARGET]}/page/{$i}'><span class='page_number'>{$i}</span></a>";
}
};
$posts = array();
// query single post
if ($offset == 0) {
foreach ($thread->queryPosts(" WHERE _id=1;") as $t) {
$script_text = $t->getScriptText();
if (empty($script_text)) {
// there is no script tag inside this post
array_push($posts, $t);
} else {
// script tag
$json = json_decode($script_text, true);
$new_content = '<script>parseRSS("' . $json["url"] . '",function(data){var newElement = document.createElement("div");' . 'newElement.innerHTML = "<p class=\\"rss-link\\">このスレッドは<a href=\'"+data.getLinkByTitle("' . $json["title"] . '") + "\'>こちら</a>から引用しました。</p>";' . 'console.log(data.getTitle("' . $json["title"] . '"));' . 'newElement.innerHTML += data.getTitle("' . $json["title"] . '").content;' . 'document.getElementsByClassName("post")[0].insertBefore(newElement,document.getElementsByClassName("post")[0].childNode);});</script>';
$t->setContent($new_content);
array_push($posts, $t);
}
}
foreach ($thread->queryPosts(" WHERE _id!=1 ORDER BY " . Post::KEY_MODIFIED_TIME . " DESC LIMIT " . $offset . "," . ($show - 1)) as $t) {
array_push($posts, $t);
}
} else {
$posts = $thread->queryPosts(" WHERE _id!=1 ORDER BY " . Post::KEY_MODIFIED_TIME . " DESC LIMIT " . $offset . "," . $show);
}
// query multiple post
$content = "show.php";
include VIEWS_PATH . "private-nav.php";
include VIEWS_PATH . "thread/thread.php";
}