Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как создать класс, а потом его вызвать?
 
 автор: Deed   (07.08.2011 в 06:24)   письмо автору
 
 

Здравствуйте!
Дано:
В зависимости от выбранного жанра в вэб-пагу инклюдится файл php с таким содержимым:


<?php
$all_pict
=mysql_query("SELECT * FROM `pictures` WHERE `genre`='$add' ORDER BY `id` DESC",$bd);
$pict_all=mysql_fetch_array($all_pict);


// $add - это переданный в $_GET жанр картины (пейзаж, портрет...)

do{
    
$pict_name $pict_all['name'];
    
$mini=$klim.$pict_all['path_mini'];
    
$full=$klim.$pict_all['path'];
    
$osnova$pict_all['osnova'];
    if(
$pict_all['about']==""){
        
$opisalovo="";
    }
    else{
        
$opisalovo=stripslashes($pict_all['about']);
    }
    
    switch(
$pict_all['genre']){
        case(
'peizaj'):$genre="пейзаж";break;
        case(
'portret'):$genre="портрет";break;
        case(
'naturmort'):$genre="натюрморт";break;
        case(
'graphica'):$genre="графика";break;
        
    }
    
    if(
$pict_all['status']==1){
        
$price=$pict_all['valuta']." ".$pict_all['price'];
    }
    elseif(
$pict_all['status']==0){
        
$price="<span style='#800000'>Продано</span>";
    }
    
    echo 
"
    <fieldset class='fieldset'>
    <legend class='legend' title='
$pict_name'>$pict_name</legend>
    <table width='100%' border='0' cellspacing='0' cellpadding='0'>
    <tr>
    <td width='205px' align='center' valign='top'><a href='
$full' rel='lightbox[roadtrip]' title='$pict_name'><img src='$mini' title='$pict_name' /></a></td>
    <td class='td_parameters'>
    <table width='100%' border='0' cellspacing='0' cellpadding='5'>
  <tr>
    <td align='left' class='parametr'>Название:</td>
    <td align='left' class='value'>&nbsp;
$pict_name</td>
  </tr>
  <tr>
    <td align='left' class='parametr'>Жанр:</td>
    <td align='left' class='value'>&nbsp;
$genre</td>
  </tr>
  <tr>
    <td align='left' class='parametr'>Основа:</td>
    <td align='left' class='value'>&nbsp;
$osnova</td>
  </tr>
    <tr>
    <td align='left' class='parametr'>Размеры (см):</td>
    <td align='left' class='value'>&nbsp;"
.$pict_all['size']."</td>
  </tr>
  <tr>
    <td align='left' class='parametr'>Цена:</td>
    <td align='left' class='value'>&nbsp;
$price</td>
  </tr>
  <tr>
    <td align='center' colspan='2'>
$opisalovo</td>
  </tr>
</table>

    
    </td>
    </tr>
    </table>

    </fieldset>"
;
    
    
    
    
    
}
while(
$pict_all=mysql_fetch_array($all_pict));
?>



Вопрос:

Как фрагмент кода с do-while сделать классом, чтобы не копировать этот фрагмент из страницы в страницу и быстро отредактировать его в случае необходимости?
Спасибо!

P.S. Извините за "скатерть" :)

  Ответить  
 
 автор: cheops   (07.08.2011 в 09:59)   письмо автору
 
   для: Deed   (07.08.2011 в 06:24)
 

Возможно вам нужны шаблоны, т.е. должен быть файл с HTML-кодом и системой обозначений, которые бы заменялись в классе на те, что вы извлекаете из базы данных, а класс бы просто бы получал имя файла-шаблона. Или другой подход - формируйте XML и преобразуйте его к нужному виду при помощи CSS-правил или XLST-преобразований.

  Ответить  
 
 автор: Гавриленко Дмитрий   (07.08.2011 в 16:49)   письмо автору
 
   для: cheops   (07.08.2011 в 09:59)
 

Заинтересовал первый вариант. Не могли бы рписать его по подробней? Очень интересно.

  Ответить  
 
 автор: DEM   (07.08.2011 в 17:10)   письмо автору
 
   для: Гавриленко Дмитрий   (07.08.2011 в 16:49)
 

Для первого варианта Вам поможет smarty. (можете почитать здесь: http://i-novice.net/smarti-vvedenie/ ). Но а вообще в гугле выдадут кучу ссылок :)

  Ответить  
 
 автор: OLi   (07.08.2011 в 18:50)   письмо автору
 
   для: DEM   (07.08.2011 в 17:10)
 

Юзай codeIgniter

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования