1
這是我的代碼。如何檢索並顯示joomla模塊中的數據結果集。
我想要顯示的名字,姓和電話號碼,但我的代碼只顯示1號
我想獲取和顯示從數據庫中的一系列數字與for
和while
。
mod_phonebook.php
<?php
defined('_JEXEC') or die('Restricted access');
$doc = JFactory::getDocument();
$doc->addStyleSheet(JURI::root().'modules/mod_phonebook/css/main.css');
require_once(dirname(__FILE__).DS.'helper.php');
if(isset($_POST['search'])){
$jinput = JFactory::getApplication()->input;
$name = $jinput->get('name','','STRING');
$lname = $jinput->get('lname','','STRING');
$tell = $jinput->get('tell','','INT');
if(myphonebook::searchdata($name,$lname,$tell))
{
echo "<p class='lbl'>$name:نتایج جستجو شامل</p>";
echo "<p class='lbl'>شماره پیدا شده=".myphonebook::searchdata($name,$lname,$tell).'</p><br>';
}
else
{
echo "شماره ای به این نام پیدا نشد";
}
}
else
{
require(JMOduleHelper::getLayoutPath('mod_phonebook'));
}
?>
helper.php
<?php
defined('_JEXEC') or die('Restricted access');
class myphonebook{
public static function searchdata($name,$lname,$tell){
$db = JFactory::getDBO();
$query = "SELECT * from `phonebook` WHERE `name` ='$name' or `Family`='$lname' or `Numberofroom`='$tell'";
$db->setQuery($query);
$results = $db->loadObjectList();
if($db->query())
{
foreach($results as $row){
$tel = $row->Telephone;
return $tel;
$counter++;
}
}
else
{
return false;
}
}
}
?>
你的數據庫查詢正在使用東西比如'WHERE name ='$ name'',所以也許只有1個名字是匹配的,因此爲什麼只有1個數字被顯示。你還應該使用最新的數據庫查詢編碼標準,並且不要使用'$ _POST' – Lodder
你會得到$ results –
你需要使用$ db-> quote($ name) – Elin