gpt4 book ai didi

php - Joomla 3 : JForm class. 如何提交它创建的表单?

转载 作者:可可西里 更新时间:2023-10-31 23:41:03 25 4
gpt4 key购买 nike

环顾网络,我找到了在 Joomla 3.x 中创建表单的方法,而且效果很好。

这是我的 PHP 代码:

$form   =& JForm::getInstance('myform','form.xml');
$fieldSets = $form->getFieldsets();
foreach ($fieldSets as $name => $fieldSet) :
?>
<?php
foreach ($form->getFieldset($name) as $field):
?>
<p>
<?php if (!$field->hidden) : ?>
<span class="formlabel"><?php echo $field->label; ?></span>
<?php endif; ?>
<span class="control"><?php echo $field->input; ?></span>
</p>
<?php
endforeach;
?>
<div class="clr"></div>
<?php
endforeach;

这是我的 form.xml:

<?xml version="1.0" encoding="utf-8"?>
<form class="form-validate">
<fieldset name="information">
<field id="name"
name="name"
type="text"
label="Namn"
description=""
class="inputbox"
size="30"
default=""
required="true"
/>

<field id="aftername"
name="aftername"
type="text"
label="Efternamn"
description=""
class="inputbox"
size="30"
default=""
required="true"
/>

<field id="email"
name="email"
type="text"
label="E-Post Adress"
description=""
class="inputbox validate-email"
size="30"
default=""
required="true"
/>

<field
name="captcha"
type="captcha"
label="Type the numbers"
description="COM_CONTACT_CAPTCHA_DESC"
validate="captcha"
/>

</fieldset>

</form>

实际上所有这些都工作正常。我看到了字段和验证码,它们呈现正确。问题是尝试在 Joomla 文档之后添加提交按钮,但在我单击它时没有执行任何操作。我的组件只是一个没有 View 文件夹和模板或任何东西的 php 文件。这是创建组件的错误方法,还是简单的表单仍然可以这样工作?

提前致谢

最佳答案

我遇到了同样的问题并研究了这个主题,我发现了你的问题!答案对我帮助不大,所以我做了一些努力来解决这个问题并得到以下结果......

    $fieldsets = $this->form->getFieldsets(); 
foreach ($fieldsets as $fieldset) {
echo '<h1>' . $fieldset->name . '</h1>';
$fields = $this->form->getFieldset($fieldset->name);
foreach ($fields as $field) {
echo $field->label;
echo $field->input;
}
}

关注行:“$this->form->getFieldset($fieldset->name)”

我看到在您的代码中遗漏了点属性“name”。

关于php - Joomla 3 : JForm class. 如何提交它创建的表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19889230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com