0

jumiに添付した.phpファイルのセッションを使用して問題が発生しました

そのページでセッションを設定するにはどうすればよいですか?私が使用するとき:

//this define and require I use from reading the other papers
define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(dirname(__FILE__)));
define( 'DS', DIRECTORY_SEPARATOR );

require_once (JPATH_BASE . DS . 'includes' . DS . 'defines.php');
require_once (JPATH_BASE . DS . 'includes' . DS . 'framework.php');

$mainframe = JFactory::getApplication('site');
$session = &JFactory::getSession();

if(isset($_GET['id'])){ 
    var_dump($id= $_GET['id[i]']);
} else {echo "No session ";}

// code connect to db
// render out the items
//
foreach($rows as $i=>$row){ 
    $id[$i] = $row['rid'];
    $name[$i] = $row['rname'];

    $view .= '<tr>
                  <td>'.$id[$i].'</td>
                  <td><a href="http://www.thispage.php?id='.$id[$i].'">'.$name[$i].'</a></td>';
?>
}
<p><?php echo $view.'</tr></table>'; ?> </p>

.....。

クリックしたid=1のサブページが見つかりません。この種のことに対処するためのより良い方法は何ですか?ありがとうございました。

4

2 に答える 2

0

構文エラーが発生した場合は、先に進む前にこれを試してください。

</php
//this define and require I use from reading the other papers
define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(dirname(__FILE__)));
define( 'DS', DIRECTORY_SEPARATOR );

require_once (JPATH_BASE . DS . 'includes' . DS . 'defines.php');
require_once (JPATH_BASE . DS . 'includes' . DS . 'framework.php');

$mainframe = JFactory::getApplication('site');
$session = &JFactory::getSession();

if(isset($_GET['id'])){ 
    var_dump($id= $_GET['id[i]']);
} else {
    echo "No session ";
}

// code connect to db
// render out the items
//
foreach($rows as $i=>$row){ 
    $id[$i] = $row['rid'];
    $name[$i] = $row['rname'];

    $view .= '<tr>
                  <td>'.$id[$i].'</td>
                  <td><a href="http://www.thispage.php?id='.$id[$i].'">'.$name[$i].'</a></td>';
}
?>
<p><?php echo $view.'</tr></table>'; ?></p>
于 2012-01-25T23:08:34.573 に答える
0

JumiにPHPファイルが含まれる方法を見ると、次のことから始める必要があります。

defined('_JEXEC') or die('Restricted access');

これにより、PHPファイルが直接HTTPリクエストを介して実行されるのを防ぐことができます(Jumiに含まれているブロガーファイルの例を見ると、この行が表示されます)。あなたが持っているdefineステートメントは、Joomla!コードは、リクエストが正しいパスを介して入力されたことを確認するために使用します。

それとは別に、@ travegaが述べているように、PHPを?>閉じる前にPHPを閉じます。foreach()

于 2012-01-26T06:11:37.647 に答える