簡體   English   中英

構建基於 AJAX 的新聞系統

[英]Building an AJAX based news system

一段時間以來,我一直致力於構建一個新聞系統。 我正在為每個新聞帖子獲取標記,如下所示:

        $newsArray = array();
        $result = News::getNews($database, 5);

        while($row = mysql_fetch_assoc($result))
              $newsArray[] = new News($row);

        foreach($newsArray as $news)
            echo $news->getMarkup($database);

這是接收我的新聞帖子的有效方式嗎? 我有一個包含我的實際新聞帖子標記的文件,名為 newspost.html - 我的 getMarkup() function 看起來像這樣:

    public function getMarkup($database) {

        $html = file_get_contents('include/html/newspost.html');

        $find = array("{ID}", "{TITLE}", "{CONTENT}", "{USERNAME}", "{TIME}");
        $replace = array($this->data['news_id'], $this->data['title'], $this->data['content'], $this->data['username'], $this->data['time']);

         for ($i = 0; $i < count($find); ++$i) {
            $html = str_replace($find[$i], $replace[$i], $html);
         }

        return $html;
    }

顯然,我無法獲取 .php 文件,所以我必須自己制定解決方案,為每個帖子添加特定的新聞信息。 但是,我覺得這非常低效。

我很想得到一些關於如何以更優雅的方式解決這個問題的建議。 我不想將我的 postnews 代碼直接嵌入到我的 PHP function 中,因為我不喜歡混合結構和內容。

反饋贊賞!

1 快速修復,移動$html = file_get_contents('include/html/newspost.html'); getMarkup function 之外。

和另一個想法,在客戶端進行 html 處理,只需將原始發布數據(json_encode)發送到您的 ajax 代碼,讓 Z2705A83A5A0659CCE34583972637EDA5 代碼進行處理。

看起來基本沒問題。 其他評論員指出的問題其實並沒有什么大不了的。 您的數據庫查詢比從 memory 再次抓取文件要慢,而且一點 str_replace 既不存在也不存在。

要告訴我們的是 AJAX 與此有什么關系,目前尚不清楚您在幾個地方在談論什么(例如“無法獲取 PHP 文件”)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM