Компонент Joomla TPlancer, добавляющий новое поле и отображающий - PullRequest
0 голосов
/ 21 октября 2010

На моем сайте установлен компонент TPLancer для Joomla, и я пытаюсь добавить дополнительную информацию на страницу профиля как Фрилансера, так и Покупателя.Я не гений с PHP или MySQL, но обычно могу блефовать на моем пути.Информация, отображаемая в настоящее время на страницах профиля, является просто данными, извлеченными из базы данных.Я добавил новую строку «веб-сайт» в базу данных и ввел некоторые данные в базу данных, но не могу отобразить их.Я думал, что это будет что-то вроде echo $ row-> website;потому что echo $ row-> Categories;работает, как и echo $ row-> company;и все они находятся в одной таблице.
Что-то происходит, очевидно, прямо над моей головой.Ниже я вставил фрагмент кода из файла tplancer.php, в котором содержится функция, на которую я пытаюсь нацелиться.
Ниже приведен код из файла tplancer.html.php, который отображает фактический HTML-код настр.Я надеюсь, что кто-то может помочь, и я надеюсь, что я не слишком тупой!Приветствия

function showLancerInfo($option) { global $mainframe; $user =& JFactory::getUser(); $db =& JFactory::getDBO(); $lancer_id = JRequest::getVar('id', 0, 'get', 'int');</p> <pre><code>$is_lancer = isLancer($user->id); $is_buyer = isBuyer($user->id); $query = "select id FROM #__glance_lancer where userid =".$lancer_id; $db->setQuery( $query ); $id = $db->loadResult(); if(!$id) { echo "Freelancer not found!"; return; } $query = "select username FROM #__users where id =".$lancer_id; $db->setQuery( $query ); $username = $db->loadResult(); $row =& JTable::getInstance('lancer','Table'); $row->load($id); $query = "select * FROM #__glance_projects where chosen =".$lancer_id." ORDER BY id desc LIMIT 10"; $db->setQuery( $query ); $projects = $db->loadObjectList(); $query = "select * FROM #__glance_bids where userid=".$lancer_id." order by id desc LIMIT 10 "; $db->setQuery( $query ); $bids = $db->loadObjectList(); HTML_front_glance::showLancerInfo($option,$row,$projects,$bids,$username);

}

function showLancerInfo($option,$row,$projects,$bids,$username) { global $mainframe, $option; $user =& JFactory::getUser();</p> <pre> $lancer_info = getUserInfo($row->userid); ?> <!-- /////////////////////// FREELANCER PROFILE PAGE /////////////////////// --> <?php $img = JPATH_SITE.DS.'images'.DS.'glance'.DS.$row->userid.'.jpg'; if(file_exists($img)) { $img = JURI::base().'images/glance/'.$row->userid.'.jpg'; echo '<img class="profile_logo" src="'.$img.'" alt="Logo" />'; } else { $img = JURI::base().'components/com_glance/images/noimage.jpg'; echo '<img class="profile_logo" src="'.$img.'" alt="Logo"/>'; } ?> <div class="profile_info"> <h1><?php echo $lancer_info['username'] ?><?php if($row->special=='y') {?> <img src="components/com_glance/images/featured.png" alt="Featured" class="feat_lancer" /> <?php } ?></h1> <h3><?php echo $row->company ;?></h3> <p><?php echo $row->categories ; ?></p> <p>Website: <?php echo $row->website; ?></p> <p>Hourly Rate US $<?php echo $row->rate; ?></p>

1 Ответ

1 голос
/ 21 октября 2010

Попытка найти папку в компоненте под названием «таблицы».Найдите правильный файл, он должен называться «lancer», в котором определены переменные таблицы для таблицы, которую вы хотите, и добавьте новые переменные, которые вы хотите отобразить - например,

...
var $website = null;
...

Тогда вы сможетеиспользовать, как вы сказали, $ row-> website.

Подсказка, которую вы ищете в функции модели, - это строка:

$row =& JTable::getInstance('lancer','Table');

Я надеюсь, что это решит вашу проблему!Удачи!

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