[英]Session start in Joomla using a while loop
我有2個數據庫,一個數據庫安裝了Joomla,另一個數據庫則存儲了我的個人數據。
我需要同時使用這兩個數據庫。
現在,我使用此查詢對數據庫進行了一段while
:
$query="Select * From lista where user_id='$id'";
$result = mysql_query($query) or die(mysql_error());
while($row=mysql_fetch_array($result))
{
$ID_STRUCTURE=$row['ID'];
ECHO '<P>Modifica <a href="..../test/index.php/modifica">'.$row['struttura'].'</P>';
$session =& JFactory::getSession();
$session->set( 'myvar', $ID_STRUCTURE );
}
當我進入/test/index.php/modifica
頁面/test/index.php/modifica
我使用以下代碼:
$session =& JFactory::getSession();
$myvar= $session->get('myvar');
echo $myvar;
我必須只得到$ID_STRUCTURE
記者的$row['struttura']
如果我在while
使用數組,在另一頁/test/index.php/modifica
使用foreach
,則將獲取所有值。
我該如何解決?
不要直接使用while循環。 將其存儲到數組或變量中,以便您可以反復使用它。 現在,它返回您的最后一個值,因為while循環已經運行。 因此,當您再次調用它時,它已經在它的最后一個記錄中。
$query="Select * FROM `lista` WHERE `user_id` = '$id'";
$result = mysql_query($query) or die(mysql_error());
$a_Array = array();
while($row=mysql_fetch_array($result))
{
$a_Array['id'] = $row['ID'];
$a_Array['link'] = '<P>Modifica <a href="..../test/index.php/modifica">'.$row['struttura'].'</P>';
}
$session =& JFactory::getSession();
$session->set( 'myvar', $a_Array);
現在使用一個foreach()循環來獲取另一頁上的所有數據。 在該數組中是值$ myvar ['id']和$ myvar ['link']。
foreach($myvar as $value){
echo $value['id'].$value['link'];
}
當然,因為您總是在循環中覆蓋它。 您需要創建一個數組,或者使鍵唯一。
while ($row = mysqli_fetch_array($result)) {
$ID_STRUCTURE = $row['ID'];
ECHO '<P>Modifica <a href="..../test/index.php/modifica">' . $row['struttura'] . '</P>';
$myvarArray[] = $ID_STRUCTURE;
}
$session = & JFactory::getSession();
$session->set('myvar', $myvarArray);
由於不建議使用mysqli或PDO而不是mysql函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.