Отдельный контроллер и просмотр нескольких запросов? - PullRequest
0 голосов
/ 04 апреля 2011

У меня есть несколько запросов MySQL, и мне нужно разделить их на Controller и View (инфраструктура CodeIgniter), как это возможно? Смотрите пример кодов ниже:

Например:

$SQL_Cat = mysql_query("SELECT * FROM categories WHERE restaurant_id = '$restaurantID'");

while ($category = mysql_fetch_array($SQL_Cat))
{

    $CategoryID = $category['id'];

    echo $category['name'];
    if ($category['description'] != "") { 
        echo $category['description'];
    }

    $q = mysql_query("SELECT * FROM items WHERE category_id = '" . $CategoryID . "'");
    while($item = mysql_fetch_array($q))
    {          
        $item_name = $item['name'];
        echo $item_name;
        $item_des = $item['description'];
        $sq = mysql_query("SELECT * FROM item_options WHERE item_id = '" . $item['id'] . "'");
        $item_id = $item['id'];
        if(mysql_num_rows($sq) > 0)
        {
            while($item_option = mysql_fetch_array($sq))
            {
               echo "---------<br />";
               $item_option_name = $item_option['option_value'];
               $item_option_price = $item_option['price'];
               $item_option_id = $item_option['id'];

               echo $item_name;
               echo $item_des;
               echo $item_option_name;
           }
       }
   }
}

Должна быть видна часть эха (MVC).

Ответы [ 2 ]

1 голос
/ 04 апреля 2011

Ну ... Самый простой способ это

controller.php

$id = $_GET[ 'id' ] ;
include_once 'model.php' ;
$content = getPage( $id ) ;
include 'view.php' ;

model.php

function getPage( $id ) {
    $result = mysql_query( 'SELECT content FROM pages WHERE id = ' . intval( $id ) ) ;
    $c = mysql_fetch_assoc( $result ) ;
    return $c[ 'content' ] ;
}

view.php

<?= $content; ?>

Просто наберите http://site/controller.php?id=1 в вашем браузере (конечно, в вашей базе данных должна быть запись)

Немного упрощено, но не интересно писать прокрутки кода:)

0 голосов
/ 05 апреля 2011

Ознакомьтесь с руководством пользователя.Это действительно помогло мне понять MVC.

  1. Модель
  2. Вид
  3. Контроллер

Когда вы хорошо разберетесь в использовании этого паттерна, разложение того, что у вас есть, не должно быть слишком сложным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...