Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: 2 проблемы [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
metra
Отправлено: 16 Марта, 2011 - 06:25:36
Post Id



Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




Champion,
куско файла, который передает все данные в главный шаблон offer.tpl.php
PHP:
скопировать код в буфер обмена
  1.  
  2. //узнаем, назначен ли исполнитель проекту
  3. $q_performer_bid = mysql_query("SELECT performer_id FROM offers WHERE id='".mysql_real_escape_string($_GET['id'])."' LIMIT 0,1;");
  4. $res_performer_bid = mysql_fetch_array($q_performer_bid, MYSQL_ASSOC);
  5.  
  6. //если да, и исполнитель не мы
  7. if($res_performer_bid['performer_id'] != 0 AND $res_performer_bid['performer_id'] != $_SESSION['id'])
  8. {
  9.         //то
  10.         $smarty -> assign("u_are_not_performer", "1");
  11.                                
  12.         $smarty -> display("view_my_bid.tpl.php");
  13.         $html2 = ob_get_contents();
  14.         $smarty -> assign("my_bid_form", $html2);
  15. }else
  16. {
  17.         //иначе вытягиваем наше предложение по этому проекту
  18.         $res_my_bid = mysql_query("SELECT users.name, users.surname, bids.* FROM users, bids WHERE offer_id = '".mysql_real_escape_string($_GET['id'])."' AND bids.master_id = '".$_SESSION['id']."' AND bids.master_id = users.id LIMIT 0,1");
  19.         $num_my_bid = mysql_num_rows($res_my_bid);
  20.  
  21.         //если предложение есть, то                    
  22.         if($num_my_bid == 1)
  23.         {
  24.                 $a_my_bid = mysql_fetch_array($res_my_bid, MYSQL_ASSOC);
  25.                 $smarty -> assign("my_bid", $a_my_bid);
  26.  
  27.                 //вытягиваем комментарии по нашему предложению                 
  28.                 $res_my_bid_comments = mysql_query("SELECT users.name, users.surname, bids_comments.* FROM users, bids_comments WHERE bid_id = '".$a_my_bid['id']."' AND master_id = users.id ORDER BY bids_comments.pub_date DESC");
  29.                 $num_my_bid_comments = mysql_num_rows($res_my_bid_comments);
  30.  
  31.                 //если комментарии есть, то ассигним их с переменной Smarty                    
  32.                 if($num_my_bid_comments != 0)
  33.                 {
  34.                         for($i=0; $i < $num_my_bid_comments; $i++)
  35.                         {
  36.                                 $a_my_bid_comments[$i] = mysql_fetch_array($res_my_bid_comments, MYSQL_ASSOC);
  37.                         }
  38.                         $smarty -> assign("bid_comments", $a_my_bid_comments);
  39.                 }
  40.                
  41.                 //если исполнитель - это мы, то                
  42.                 if($res_performer_bid['performer_id'] != 0 AND $res_performer_bid['performer_id'] = $_SESSION['id'])
  43.                 {
  44.                         $smarty -> assign("u_are_performer", "1");
  45.                 }
  46.                 $smarty -> display("view_my_bid.tpl.php");
  47.                 $html2 = ob_get_contents();
  48.                 $smarty -> assign("my_bid_form", $html2);
  49.         }else
  50.         {
  51.                 $smarty -> assign("offer_id", mysql_real_escape_string($_GET['id']));
  52.                 $smarty -> display("add_bid_form.tpl.php");
  53.                 $html = ob_get_contents();
  54.                 $smarty -> assign("bid_form", $html);
  55.         }
  56.                                        
  57.         ob_end_clean();
  58.                                
  59.         break;
  60. }


Дочерний шаблон view_my_bid.tpl.php:
CODE (html):
скопировать код в буфер обмена
  1. {if !isset($u_are_not_performer)}
  2.         <div id="my_bid">
  3.                 <h2>{$my_bid.name} {$my_bid.surname} (это вы)</h2>
  4.                 <p>{$my_bid.bid}</p>
  5.                 <p>{$my_bid.pub_date}</p>
  6.                 <a href="#" onclick="hide_show()">Переписка</a>
  7.                 <div id="bid_comments">
  8.                         <form action="add_bid_comment_handler.php" method="POST">
  9.                                 <textarea name="comment" style="width: 300px; height: 160px;"></textarea><br>
  10.                                 <input type="hidden" name="bid_id" value="{$my_bid.id}"><br>
  11.                                 <input type="hidden" name="offer_id" value="{$my_bid.offer_id}"><br>
  12.                                 <input type="submit" value"Ответить">
  13.                         </form>
  14.                         <div id="bid_comments_comments">
  15.                                 {foreach from=$bid_comments item=bid_comment}
  16.                                         <div id="bid_comment">
  17.                                                 <span id="green_bold">{$bid_comment.name} {$bid_comment.surname} написал в {$bid_comment.pub_date}</span>
  18.                                                 <p>{$bid_comment.comment}</p>
  19.                                         </div>
  20.                                 {/foreach}
  21.                         </div>
  22.                 </div>
  23.         </div>
  24.         {if isset($u_are_performer)}
  25.                 <div id="bid_right">
  26.                         <p><span id="green_bold">Вы являетесь исполнителем</span></p>
  27.                 </div>
  28.         {/if}
  29. {else}
  30.         Исполнитель для данного проекта найден. К сожалению это не вы.
  31. {/if}


DeepVarvar, с утра не понял вашу затею, но думаю, что к вечеру разберусь)
P.S.: прошу не флудить.
 
 Top
metra
Отправлено: 28 Марта, 2011 - 09:08:50
Post Id



Гость


Покинул форум
Сообщений всего: 85
Дата рег-ции: Янв. 2011  


Помог: 0 раз(а)




Так и не решил проблему с выводом лишней строки поверх всего сайта и что самое главное - с нотификацией новых сообщений. Не могу придумать.
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB