web-dev-qa-db-ja.com

Webフォームは送信せず、代わりに自身にリダイレクトします

間もなく作成されるDrupalサイトのWebフォームが送信の保存を停止しました。代わりに、入力された値で同じページに戻ります。動作が停止したときのタイムラインはありません。サンドボックス環境では、Webform 7.x-3.17は正常に動作します。

さらにデバッグするためのいくつかの提案を探しています

私は以下を試しましたが、成功しませんでした:

  • Webformを参照するすべてのモジュール(特に Webform Template および Webform Validation 、および_hook_form_alter_を使用していた独自のカスタムモジュール)を無効にする)。
  • 最新のWebフォームにアップグレードする(はい、私はupdate.phpを使用することを覚えていました)。
  • ドキュメントに基づくhook_form_alter($form, &$form_state)array_unshift($form['#submit'],'my_custom_submit')を組み合わせて、カスタムコールバックを挿入します。ここで、 drupal_build_form($form['form_id']['#value'],$form_state) を呼び出します提出物をエミュレートする。
  • 明らかにキャッシュを一貫してフラッシュしています。
  • Webフォームが確実に公開されるようにします。
  • 単純に_$form_state['executed']_を監視するための最低限のモジュールを作成する(常にfalseを返します)。
  • SSHとFTPの両方でサーバーの_error_log_を確認しています。
  • [レポート]> [最近のログメッセージ]を確認します。
  • New:Webformの無効化とアンインストール、古いWebformファイルの削除、新しいバージョンのWebformのインストールを試みました。駄目だ。

問題はWebformに限定されていないので、問題のキューに投稿しても意味がありません。

このバグを解決するために、他にどのようなデバッグ方法を利用できますか?アンインストールせずにすべてのモジュールを無効にした場合、FTP全体のバックアップが必要ですか、それともSQLだけですか?

編集:提案に従って私が試したいくつかのこと(失敗)

  • $ cookie_domainと$ base_urlをsettings.phpで明示的に定義する
  • トリガーモジュールとアクションモジュールを調べ、リダイレクトの誤実行の可能性がないか確認する
8
Morgan Delaney

Webformモジュールで問題が発生したことは一度もありませんが、問題が発生した場合は、sites/default/setting.phpを再確認して、明示的な$base_urlまたは$cookie_domainの設定がないか確認してください。ログインで問題が発生する可能性があるため、後者はほとんどありません。

2
Artur

同じ問題がありました。 Dennisと同様に、この問題はwebformノードにURLエイリアスを配置することで発生しました。エイリアスを削除して完全なURLを実行すると、問題なく動作しました。私の場合、選択したURLエイリアスが自分のサイトのディレクトリ名と等しいため、競合が発生しました。だから私は別のエイリアスを使うことができ、それはうまくいきました。サイトの競合するディレクトリの名前を変更しない限り、必要なエイリアスを使用できません。

1
Martena Murphy

ここに2セントの価値を追加したかったのです。開発サイトでも同じ問題が発生しました。サイトはまもなく公開されますが、機能を確認していたところ、同じ問題が発生しました。

この問題は、webformノードにURLエイリアスを配置したことが原因でした。エイリアスを削除して完全なURL(mysite.com/?q=node/8)を実行したところ、問題なく動作しました。

また、クリーンなURLを有効にしていないため、URLエイリアスの問題が修正される可能性があります。

しかし、私は問題を抱えている他の人にこれを捨てたかったです。 。 。

0
Dennis

私はまさにこの問題を抱えていました。 Webフォームがフォームを理解できないようにフォームが変更されていることが問題であることがわかりました。私の知る限りでは、$ form_stateは変更の影響を受けていませんでしたが、$ formを変更するだけですべてを壊すことができました。

まだ回避策が見つかりません。更新する場合は回答を更新します。

更新:回避策として、#prefixと#suffixを使用して、フォームコンテナーに配置するのではなく、要素にマークアップを追加しました。これで問題が解決しました。

0
tvanc

あなたがBoostモジュールを使用していて、それが私に起こり、問題が.htaccessファイルにあった場合に備えて、ここで私の解決策を確認してください: https://drupal.stackexchange.com/a/207102/11424

0
Diego Jancic