创建具有百置验证并提交的表单 -- 7 领域 和 forms 领域 drupal 相关 的问题

Creating a form with GET bypases the validation and submit


0
vote

问题

中文

我正在创建一个简单的形式,当Sumits时,显示来自外部API的结果。 但URL保持不变,因此如果您的搜索结果,您无法获得URL并将其发送给某人。

但是当我使用get

  $form['method'] = 'get';   

它显示了一个约束的URL ..

  mysite.com/search?cat=2$coutry=3   

但它and tonot提取结果,导致它绕过提交和验证功能。 任何帮助?

英文原文

I am creating a simple form, when sumits, shows result from an external API. But URL remain the same, so you cant get a url if your search result and send it to someone.

But when I use get

$form['method'] = 'get'; 

It shows a construted url..

mysite.com/search?cat=2$coutry=3 

But it donot fetch the result, cause it is bypassing the submit and validation functions. Any help?

     

回答列表

0
 
vote
vote
最佳答案
 

有页面或表单检查是否存在变量,使用 drupal_get_query_parameters() ,如果存在,则执行验证检查并从外部API获取结果,并显示。

例如,

  $params = drupal_get_query_parameters(); if ( isset($params['cat']) ) {   //validate $params['cat']     if ( myValidationCheck($params['cat']) ) {       $results = myExternalAPIGetResults($params['cat']);       $form['results'] = myResultsDisplay($results);     }   }   
 

Have the page or form check for the presence of your variables, using drupal_get_query_parameters(), and if present, perform validation checks and get results from the external API, and display.

For example,

$params = drupal_get_query_parameters(); if ( isset($params['cat']) ) {   //validate $params['cat']     if ( myValidationCheck($params['cat']) ) {       $results = myExternalAPIGetResults($params['cat']);       $form['results'] = myResultsDisplay($results);     }   } 
 
 
         
         

相关问题

3  drupal_add_js正在删除jquery  ( Drupal add js is removing jquery ) 
我的模块中有以下内容。 drupal_add_js( drupal_get_path('module', 'responsive_videos') . '/js/fluidvids.js', array( 'type' => 'file', 'scope' => '...

0  将数据插入表后,更新主页Drupal7中的数据  ( After insert data to table updating data in home page drupal7 ) 
我有一个用于将数据插入类别表的插入_data模块,我还有一个名为mysite的模块,该模块具有名为"function mysite_preprocess_panels_pane(& $变量)" 的函数用于将数据呈现为panel.tbl。 PHP。 我的问题是我如何从MySite模块调用函数"mysite_pr...

1  如何为Excel Parser Drupal 7设置限制  ( How to set limit for excel parser drupal 7 ) 
我正在使用Feed进口商从Excel表导入用户。在我当地的WAMP服务器中,我可以导入超过170个用户。但是当我尝试在我的服务器上时,它不起作用。它显示: 发生了一个ajax HTTP错误。 HTTP结果代码:500调试 信息如下。路径:/批处理?ID = 2906& op = do Statustex...

1  使用页面处理程序时包含字符编码(丹麦语æØÅ)的问题包括hook_menu()中的文件。  ( Problem with character encoding danish %c3%a6 %c3%b8 %c3%a5 when using page handler include ) 
当我使用.inc文件来处理我的页面输出时,所有丹麦特殊字符(æ,Ø和Å)显示为问号,即它们是用错误的字符编码呈现。 以下模块按预期工作。 stack_exchange_minimal.module <?php /** * Implements hook_menu(). */ function stack_ex...

0  设置字段的CondInonal默认值  ( Set conditonal default value of a field ) 
我有一个与字段的自定义表单... function mh_integration_connect_form($form, &$form_state) { $form['#method'] = 'get'; $params = drupal_get_query_parameters(); $form[...

0  在SQL查询中指定二进制顺序  ( Specify binary order in sql query ) 
在自定义模块中,从数据库中选择字段(Collat​​ion:UTF8_LATVIAN_CI),订购的订单out给出了错误的字母顺序: "aaaa,āaaa,abb,acc" 而不是"aaaa,abb,acc,āaaa" 。 这可以通过如下所示的查询来纠正,如此 [..] ORDER BY myfield COLL...

1  为什么在我的规则条件下始终不变,新值始终相同?  ( Why is unchanged and new value always the same in my rules condition ) 
我有一个名为验证的布尔字段,在Profile2中定义。当此字段从未勾选到勾选时,我想向用户发送电子邮件。我很容易想到规则 使用"在更新现有配置文件之后" ,然后比较字段 profile2-unchanged:user:profile-directory-information:field-verified 和 ...

1  在Drupal中记录更改/修改  ( Logging changes modifications in drupal ) 
是否有标准方式或模块可以记录所有节点/设置修改/更新? 我不觉得看门狗是最好的地方,因为它是一个错误日志而不是更新日志,但我想它会这样做。 在magento cms中,它可能看起来像这样: http://amasty.com/admin -action-log.html 我们有一些事情发生了改变,我们不知道谁...

1  覆盖显示套件布局的模板文件适用于其他页面  ( Overriding template file of display suite layout applies on other pages ) 
我在管理用户部分中创建了一个显示套件布局"堆叠" ,然后我想覆盖该模板,并在我的主题模板文件夹中制作一个新的模板, DS模块为我建议: ds-2col堆叠 - user.tpl.php ds-2col堆叠 - user-user.tpl.php 所以我在我的模板文件夹中创建了 ds-2col-st...

2  蜜罐在自定义webforms(手册)  ( Honeypot in custom webforms manual ) 
我正在制作自定义表单(使用 drupal_render )添加字段,但由于我为所有Web表单启用了Honeypot,当我提交表单时,我收到以下消息: 表单提交存在问题。请等待X秒然后再试一次。 这是因为蜜罐标记没有包含在我的自定义形式中。 我有两个选项: 禁用此表​​单的蜜罐(通过从Drupal管理菜单中通过...

0  改变标题?  ( Change a heading ) 
一个面板有一个错误的文章标题,我想做对,但是;我找不到错误的数据来自哪里。我难以识别Drupal的组件,但是;希望这个问题不会太令人困惑或不当地描述。 在我的主页上,我有一个物体,它具有"查看,编辑,面板布局,面板内容" ,似乎包含欢迎块和特色文章。欢迎块窗格标题是"欢迎来到城市名称库" ,我想改变城市名称。但是,我...

2  表单API AJAX调用使用行为重新加载附加的JS  ( Form api ajax calls reload attached js using behaviors ) 
我的表格上有传单映射,这是我使用的容器div: $form['general']['map'] = array( '#markup' => '<div class="map-wrapper" id="ngmap"></div>', ); 一切都适用于罚款和地图正在加载。我还添加了如下形式底部的图像上传功...

1  试图向WebForm发送<div>  ( Trying to send a div with webform ) 
我有一个基于用户选择的一些计算(JavaScript)的WebForm,我想与用户可选字段一起发送给用户的电子邮件。 是否可以将这些div与字段一起附加到HTML电子邮件? ...

0  麻烦启用内容类型的视图模式  ( Trouble enabling view modes for content types ) 
我有一个自定义视图模式,需要为节点类型启用它。我需要通过我的模块启用它,似乎hook_entity_info_alter()是去的方式,但它不起作用。我错过了什么? 我的代码: function mymod_entity_info_alter(&$entity_info) { $entity_info['...

0  如何在内容类型中添加编辑按钮?  ( How to add edit button in content type ) 
我是drupal新的,我正在添加一个按钮,用于从数据库编辑数据。 但是当我使用添加内容类型添加编辑按钮时,此错误消息就向我展示。请帮助我指导如何添加按钮并将其与数据库相关联。 ...

1  如何在首页上显示两个列的视图? [关闭]  ( How to show a view with 2 columns on the front page ) 
关闭。这个问题需要更多聚焦。它目前不接受答案。 想要改进这个问题?更新问题,因此它仅拍摄了一个问题,只有编辑此帖。 关闭 4年前。 ...

0  通过日期字段的值过滤,在“上个月”中筛选为7月31日的7月内容  ( View filtered by a date fields value being in last month shows july content o ) 
视图通过日期字段的值过滤。日期字段的月份必须是上个月才能匹配过滤器。 在每天除外,7月31日,它将返回上个月的结果。它应该返回六月匹配的结果。我们已经尝试过"-1个月" ,但这也不工作。 为什么7月31日它会跳过一个月? ...

5  现场值更改时提交表单  ( Submit form when field value changed ) 
我有一个简单的形式,方法如下... function MYMODULE_form($form, &$form_state) { $form['#method'] = 'get'; $params = drupal_get_query_parameters(); $form['cat'] = arra...

0  如何在节点显示页面上显示CCK现场标签,而不是节点添加页面?  ( How can i make cck field labels display differently on the node display page as ) 
我有一个自定义内容类型,表单标签如下所示: "你想上传照片吗?" 适合上传数据,但是在向世界显示数据时,我仍然存在: "照片:" 我看到它有一个模块,但它似乎没有很好地支持或使用那么多 https://www.drupal.org/project/field_display_label 。同样,该模块似乎不支持第...

-1  哪个模块与Profile2有效2,以显示个人资料完成状态?  ( Which module is work good with profile2 to show profile complete status ) 
我在drupal 7中使用profile2模块。我想使用百分比来显示配置文件完成状态。我已经使用了配置文件完整的百分比模块,但我没有得到适当的结果。请帮助哪个模块与Profile2一起使用。谢谢 ...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.