を呼び出して登録フォームにリストボックスを作成してください...Joomla! DB
mhy Joomla!の登録フォームにフォームを追加するために、必要に応じてregistration.xmlファイルやその他のファイルを変更しました。サイト。フィールドは現在すべてのテキストボックスであり、状態などの項目のリストボックスを作成したいと考えています。私はオプションと値を入力するのではなく、むしろデータベースのテーブルから取り出したいと思う。私registration.xmlファイル内
このコードは動作します:私のregistration.xmlファイル内
<field name="statelist2" type="list"
default=""
label="COM_USERS_REGISTER_STATE_LABEL"
description="COM_USERS_REGISTER_STATE_DESC"
message="COM_USERS_REGISTER_STATE_MESSAGE">
<option value="CT">CT</option>
<option value="MA">MA</option>
</field>
このコードは動作しませんし、私はいくつかにロードするページを取得するために、DBへの呼び出しを削除してみましたPHP:
<field name="statelist"
type="list"
default=""
label="COM_USERS_REGISTER_STATE_LABEL"
description="COM_USERS_REGISTER_STATE_DESC"
message="COM_USERS_REGISTER_STATE_MESSAGE">
<?php
$x = "CT";
$z = "NY";
echo "<option value='" . $x. "'>" . $x . "</option>";
echo "<option value='" . $z. "'>" . $z . "</option>";
?>
</field>
私の質問(複数可): 1)私は、リストボックスを作成したり、潜在的な値を移入するいずれかのために、()どのようなファイル内のコードを入れなければならないのですか?
2)既存のJoomla!を活用するには、フレームワーク、私はloadFormDataとgetDataのためのいくつかの関数registration.phpファイルを参照してください - それがレンダリングされた後に登録フォームの項目を設定するためにそこにコードを置くことができますか?私はこのようなことを考えていたが、確信が持てなかった。
<?php
//init Joomla Framework
define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);
define('JPATH_BASE', realpath(dirname(__FILE__).DS.'..'));
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php');
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php');
$mainframe = JFactory::getApplication('site');
//DBQuery
$database =& JFactory::getDBO();
$query = "SELECT * FROM #__tbl_State;";
$database->setQuery($query);
//$result = $database->query();
$items = ($items = $db->loadObjectList())?$items:array();
//print_r($result);
?>