我在joomla 2.5中创建了一个自定义组件,其中的字段是在xml文件中创建的.这是代码.
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset>
<field
name="id"
type="hidden"
/>
<field
name="title"
type="text"
label="Title"
description="This is the title"
size="40"
class="inputbox"
default=""
style="width:294px;height:135px;"
/>
<field
name="description"
type="textarea"
label="Description"
description="This is the description"
rows="20"
cols="10"
class="inputbox"
default=""
/>
</fieldset>
</form>
Run Code Online (Sandbox Code Playgroud)
我希望描述文本区域是一个编辑器,就像在新文章表单中一样.我该怎么做?
我需要从Joomla本身以外的程序中获取当前登录到Joomla的用户的信息.我从1.5升级到2.5,而我以前所做的不再适用了.
<?php
define( '_VALID_MOS', 1 );
include_once( 'globals.php' );
require_once( 'configuration.php' );
require_once( 'includes/joomla.php' );
$option="test";
$mainframe = new mosMainFrame( $database, $option, '.' );
$mainframe->initSession();
$my = $mainframe->getUser();
$joomla_name = $my->name;
$joomla_email = $my->email;
$joomla_password = $my->password;
Run Code Online (Sandbox Code Playgroud)
经过一番研究,我想出了这个:
<?php
define( '_JEXEC', 1 );
define( 'JPATH_BASE', dirname(__FILE__) );
define( 'DS', '/' );
require_once ( JPATH_BASE .DS.'configuration.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
require_once ( JPATH_BASE .DS.'libraries'.DS.'joomla'.DS.'factory.php' );
$my =& JFactory::getUser();
$joomla_name = $my->name;
$joomla_email = $my->email; …
Run Code Online (Sandbox Code Playgroud) 在发布问题并参考我的Joomla版本时,我总是被告知要更新到最新版本.我不明白为什么更新是如此重要.更新有什么好处?
最近,我尝试将新模块上传到我们的网站,但是在"无法安装所有组件"失败后,我们现在无法管理网站导致所有菜单类型项目消失 - 同时,使网站失效.
那么我在哪里可以找到核心"菜单项类型"来重新设定并尝试使所有这些工作正常.
我正在创建joomla组件,我在从post访问数据时遇到问题
在一个视图中,我有6个收件箱,其中3个由JTable类进行交易,这很好,但其他3个我想要处理,我的字段:
<input id="jform[team1_goals_players]" class="" type="hidden" name="jform[team1_goals_players]" value="2,2," aria-invalid="false">
<input id="jform_team1_goals" class="required" type="text" value="4" name="jform[team1_goals]" aria-required="true" required="required" aria-invalid="false">
Run Code Online (Sandbox Code Playgroud)
第一个是我要处理的字段,第二个是由JTable类使用的chandled
$sth = JRequest::get('team1_goals_players');
Run Code Online (Sandbox Code Playgroud)
$ sth是空的
我应该使用JRequest获取该值和其他2
是否有一些方法可以通过它的名称获取组件版本?我尝试了很多例子,但没有发现任何可行的例子.类似的东西JComponentHelper::getParams('com_mycomponent')->get('version')
不起作用,因为它从jos_extensions.params
行检索值.我的组件版本只在jos_extensions.manifest_cache
排...
如何将"data"属性添加到我的mod_mymodule.xml中的字段type ="list",如下图中的(data ="test")?
<field name="mylistvalue" type="list" default="" label="Select an option" description="">
<option data="test" value="0">Option 1</option>
<option value="1">Option 2</option>
</field>
Run Code Online (Sandbox Code Playgroud) 我试图在数据库(mysql)中插入数据但是当我尝试使用单引号或双引号添加数据时不成功.否则工作正常(不带引号).我知道我们必须mysql_real_escape_string
在这种情况下使用.但我正在使用joomla框架,这个功能不起作用.
我的代码如下:
function insert($table, $array) {
$db = JFactory::getDBO();
$query = "INSERT INTO ".$table;
$fis = array();
$vas = array();
foreach($array as $field=>$val) {
if(is_array($val)){
$x= implode(",",$val);
}
else
{
$x=$val;
}
$fis[] = "`$field`";//you must verify keys of array outside of function;
//unknown keys will cause mysql errors;
//there is also sql injection risc;
$vas[] = "'".$x."'";
}
$query .= " (".implode(", ", $fis).") VALUES (".implode(", ", $vas).")";
$db->setQuery($query);
$db->query();
}
insert('#__storage_companies',JRequest::get( 'post' ));
Run Code Online (Sandbox Code Playgroud)
请告诉我如何摆脱这个.
请提供步骤将Joomla 1.5组件更新为Joomla 2.5组件.
先感谢您.
joomla2.5 ×10
joomla ×9
php ×3
components ×1
joomla1.5 ×1
joomla3.0 ×1
mysql ×1
text-editor ×1
upgrade ×1