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


8

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

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

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

  • Webformを参照するすべてのモジュール(特にWebformテンプレートWebform検証、およびを使用していた独自のカスタムモジュール)を無効にします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を返します)。
  • error_logSSHとFTP の両方でサーバーを確認する。
  • [レポート]> [最近のログメッセージ]を確認します。
  • New: Webformの無効化とアンインストール、古いWebformファイルの削除、Webformの新しい新しいバージョンのインストールを試みました。駄目だ。

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

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

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

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

誤解を招く可能性のあるリダイレクトを引き起こすトリガー/アクションまたはルールを確認しましたか?
Patrick Kenny

@PatrickKenny残念ながら、トリガーやアクションモジュールのUIページにリードはありません。
モーガンデラニー

$ base_urlと$ cookie_domainの値が適切に設定されていることを確認して、適切なsettings.phpを使用していることを確認してください。異なる設定には複数の設定フォルダーを使用することをお勧めします。それぞれに独自のデータベース、$ base_url、$ cookieドメイン設定があります。私の控えめな意見では、トラブルシューティングが容易になります。
stefgosselin

回答:


2

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


ダン。これをsites / default / settings.phpの下部に貼り付けてみました:pastebin.com/94PBeeiG。それはうまくいきませんでした、しかし応答に感謝します!(私は確かに必死に走っています。)
モーガンデラニー

1

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


0

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

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

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


ここにも同様の問題があります。特定のフィールドが存在すると#node要素が削除され、送信/検証が失敗します。
njp

0

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

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

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

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


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.