大家好,我是Prestashop1.6的新手,我使用jQuery的$.ajax调用PHP脚本。我想要的是,当我点击按钮时创建新的表单,这是我的代码:
在catproduct.php中:
public function clickme(){
$html = '<a href="#" class="displayForm">Click me</a>
<div id="myFormm"></div>
<script type="text/javascript">
$( ".displayForm" ).click(function() {
$.ajax({
url: "'._MODULE_DIR_.$this->name.'/ajax.php",
context: document.body,
})
.done(function(data) {
$( "#myFormm" ).html( data );
alert( "Load was performed." );
});
})
</script>';
return $html;
}
public function renderForm()
{
$fields_form = array(
'form' => array(
'legend' => array(
'title' => $this->l('Add new category'),
'icon' => 'icon-cogs'
),
'input' => array(
array(
'type' => 'text',
'label' => $this->l('FCI'),
'name' => 'FCI',
),
),
'submit' => array(
'title' => $this->l('Save')
)
),
);
$helper = new HelperForm();
$helper->show_toolbar = false;
$helper->table = $this->table;
$lang = new Language((int)Configuration::get('PS_LANG_DEFAULT'));
$helper->default_form_language = $lang->id;
$helper->allow_employee_form_lang = Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') ? Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') : 0;
$this->fields_form = array();
$helper->identifier = $this->identifier;
$helper->submit_action = 'submitCatForm';
$helper->fields_value['FCI'] = 'ddddd';
$helper->currentIndex = $this->context->link->getAdminLink('AdminModules', false).'&configure='.$this->name.'&tab_module='
.$this->tab.'&module_name='.$this->name;
$helper->token = Tools::getAdminTokenLite('AdminModules');
return $helper->generateForm(array($fields_form));
}
php文件(ajax文件调用renderForm()函数来创建新表单):
require_once(dirname(__FILE__).'../../../config/config.inc.php');
require_once(dirname(__FILE__).'../../../init.php');
include_once('catproduct.php');
$module = new catproduct();
echo $module->renderForm();
done函数不返回任何内容。请帮帮我我花了两天时间寻找解决方法
Prestashop(前台)中的ajax调用示例:
$( document ).ready(function() {
var form = $('.MyForm');
form.submit(function(e) {
$.ajax({
type: 'POST',
url: '../modules/MyModule/controllers/front/MyFrontController.php',
data: $(this).serialize(),
dataType: 'json',
success: function(jsonData) {
console.log(jsonData);
}
});
e.preventDefault();
});
});
控制台显示结果。如果不是,说明php文件有问题。
下面是PHP文件的示例:
<?php
include(dirname(__FILE__).'/../../../../config/config.inc.php');
include(dirname(__FILE__).'/../../../../init.php');
include(dirname(__FILE__).'/../../classes/MyUsefulModuleClass.php');
if (Tools::getIsset('my_useful_id')) {
echo Tools::jsonEncode('Ajax return fine')); }?>
检查是否调用了config.inc.php和init.php。在处理结果时始终使用console.log()。
然后尝试分离表单创建,您可以只使用HTML,不确定是否可以使用帮助器创建表单,并使用Ajax显示。我认为大多数模块只使用HTML
我正试图通过Prestashop 1.7 web服务创建一个新产品。 我将以下XML发布到https://www.myshop.com/api/products.(我在https://www.myshop.com/api/products?schema=blank从空白方案创建了XML数据) 但我得到了以下错误: 正如您在发布的XML中看到的,price字段有一个值。此外,上述XML中包含的值对于
我做了一个模块来钩住后台办公室产品页面中的表单(带有钩子)。我如何创建一个表单与一些输入模块? 我认为可以通过{和file}或{和file}来完成。如果有人将此解释为一个演练,我相信它也会成为许多其他人的一个很好的参考。这是由PrestaShop模块生成器创建的代码:
问题内容: 我正在尝试获取查询结果并将其放入SQL Server 2017数据库中的表中。 我知道之前曾在这里,这里和这里询问过类似的问题,但是我没有找到有效的解决方案。 该查询本身运行良好,并且得到的正是我要查找的数据: 由于SQL超过8000个字符限制,我无法使用。 尝试1: 但是得到: 无法找到对象“购买”,因为它不存在或您没有权限。 尝试2: 但得到一个错误 ‘)’`附近的语法不正确。 尝
我知道我们可以使用火花jdbc从现有的mysql表中读写数据。但是我们甚至可以创建mysql表并使用数据框插入数据吗?当我尝试加载文件到数据框,并尝试写入不存在的表我面临空指针异常。以下是错误: JAVAorg上的lang.NullPointerException。阿帕奇。火花sql。处决数据源。jdbc。JdbcRelationProvider。在org上创建关系(jdbrelationprov
嗨,我是prestashop的新手,我尝试创建一个1.7版的管理模块。我会创建一个新的菜单来显示模板和管理我的数据库。 mymodule.php: 模块/mymodule/controller/admin/MyModuleController。php: 模块/mymodule/views/templates/admin/mymodule。第三方物流: 我用很多教程1.7/1.6的编译创建了这个,但
WordPress有一个管理仪表板。在仪表板中,我们可以作为管理员添加新用户。我想在管理员添加新用户时在MySQL中创建一个表。例如,我创建了一个名为John Smith的用户,其用户名为user1;当我成功添加该用户时,将在名为user1的数据库中创建一个表。