Php Drupal表单提交操作在随机时间更改

Php Drupal表单提交操作在随机时间更改,php,forms,drupal,drupal-7,Php,Forms,Drupal,Drupal 7,我已经创建了一个定制的Drupal模块/表单,当提交该操作时,它会将您带到另一个页面并发布数据。相当标准的东西 随机地,表单操作在一天中以随机(未设置)的时间间隔更改,而这些时间间隔与任何明显的事情都不相关,例如cron运行。它可能一天只发生一到两次,所以如果有人知道这是什么原因,或者告诉我正确的方向 任何人觉得需要添加的内容,请告诉我 是自定义模块代码: /** * Test form declaration */ function test_form($form, &$form

我已经创建了一个定制的Drupal模块/表单,当提交该操作时,它会将您带到另一个页面并发布数据。相当标准的东西

随机地,表单操作在一天中以随机(未设置)的时间间隔更改,而这些时间间隔与任何明显的事情都不相关,例如cron运行。它可能一天只发生一到两次,所以如果有人知道这是什么原因,或者告诉我正确的方向

任何人觉得需要添加的内容,请告诉我

是自定义模块代码:

/**
 * Test form declaration
 */

function test_form($form, &$form_state){
    $form['#attributes'] = array('id' => "test-form");
    $form['search-field'] = array(
    '#type' => 'textfield',
    '#title' => t('<span class="highlighted">Test</span>'),
    '#attributes' => array(
            'class' => array('form-control form-text'),
        ),
  );

  $form['submit'] = array(
    '#type' => 'submit',
    '#value' => 'Search',
    '#attributes' => array(
        'class' => array('btn btn-default text-hide'),
      ),
  );
  return $form;
}

/**
 * search form submit
 */
function test_form_submit($form, &$form_state){
    $searchQuery = $form_state['values']['search-field'];


$query = array();
if($search <> ''){
    $query = array(
        'field_geofield_distance[distance]' => '100',
        'field_geofield_distance[unit]' => '3959',
        'field_geofield_distance[origin]' => $search
    );
}
drupal_goto('test-page', array('query' => $query));
}
/**
*测试表格声明
*/
功能测试形式($form,&$form\u状态){
$form['#attributes']=数组('id'=>“测试表单”);
$form['search-field']=数组(
“#键入”=>“文本字段”,
“#title”=>t('Test'),
“#属性”=>数组(
'class'=>array('form-control form text'),
),
);
$form['submit']=数组(
“#键入”=>“提交”,
“#值”=>“搜索”,
“#属性”=>数组(
'class'=>数组('btn btn默认文本隐藏'),
),
);
返回$表格;
}
/**
*搜索表单提交
*/
功能测试表格提交($form,&$form\u state){
$searchQuery=$form_state['values']['search-field'];
$query=array();
如果($search“”){
$query=array(
'field\u geofield\u distance[distance]'=>'100',
“场距[单位]”=>“3959”,
'field\u geofield\u distance[origin]'=>$search
);
}
drupal_goto('test-page',array('query'=>$query));
}
如果您的表单创建了数据(比如节点),那么在创建具有特定值的节点时,可能会重定向到另一个页面时,您有一个关于规则的重定向

查找在内容创建或提交时激活的规则

另外,Drupal的顶部可能有一些重定向魔法,比如.htacess文件的错误配置。如果表单总是做同样的事情,那么它的行为应该总是一样的。为什么会重定向到旧站点的页面

最后,如果新站点有来自旧站点的代码,则检查提交、创建和表单更改挂钩


希望这能有所帮助。

表单动作会变成什么?也许我需要改变我的问题-改变的是价值观。该页面的URL应该重定向到站点上不存在的完全随机页面的更改。哦,所以有时候它不会重定向到“测试页面”吗?它去哪里了?是的,95%去了。该网站已被另一个完全重建的网站所取代,奇怪的是,重定向将转到旧网站上的现有页面,我可以肯定地说,这已经不复存在了。嗯,也许有一个表单更改正在某处执行某些操作。在提交函数中检查$form_state的值。检查是否未设置
$form_state['redirect']
。另外,请检查未设置$_GET['destination']。谢谢,Beto。我会检查一下.htaccess文件,你可能会发现一些东西。这真的很奇怪,我以前从未遇到过这样的事情。我认为表单不会创建数据。