เว็บฟอร์มไม่ส่งแทนที่จะเปลี่ยนเส้นทางไปยังตนเอง


8

Webforms ของ Drupal ในเว็บไซต์ My Drupal หยุดการบันทึกการส่ง แต่กลับมาที่หน้าเดิมพร้อมด้วยค่าที่ป้อนเข้า ฉันไม่มีไทม์ไลน์เมื่อหยุดทำงาน ในสภาพแวดล้อม sandbox Webform 7.x-3.17 ทำงานได้ดี

ฉันกำลังมองหาคำแนะนำเพื่อแก้ไขข้อบกพร่องเพิ่มเติม

ฉันได้ลองทำสิ่งต่อไปนี้แล้ว แต่ไม่ประสบความสำเร็จ:

  • ปิดใช้งานโมดูลใด ๆ ที่อ้างถึง Webform (โดยเฉพาะแม่แบบWebformและการตรวจสอบ Webformและโมดูลที่กำหนดเองของฉันที่ใช้อยู่hook_form_alter)
  • อัปเกรดเป็น Webform ล่าสุด (ใช่ฉันจำได้ว่าใช้ update.php)
  • ขึ้นอยู่กับเอกสารประกอบการรวมhook_form_alter($form, &$form_state)กับarray_unshift($form['#submit'],'my_custom_submit')การแทรกการโทรกลับที่กำหนดเองซึ่งฉันโทรdrupal_build_form($form['form_id']['#value'],$form_state)เพื่อเลียนแบบการส่ง
  • เห็นได้ชัดว่าล้างแคชอย่างสม่ำเสมอ
  • ตรวจสอบให้แน่ใจว่ามีการเผยแพร่เว็บฟอร์ม
  • การเขียนโมดูลกระดูกเปลือยเพื่อตรวจสอบเพียง$form_state['executed'](มันมักจะส่งกลับเท็จ)
  • ตรวจสอบเซิร์ฟเวอร์ของฉันerror_logทั้งใน SSH และ FTP
  • การตรวจสอบรายงาน> ข้อความบันทึกล่าสุด
  • ใหม่:พยายามปิดการใช้งาน & ถอนการติดตั้ง Webform ลบไฟล์ Webform เก่าและติดตั้ง Webform เวอร์ชันใหม่ ไม่ดี.

ฉันค่อนข้างแน่ใจว่าปัญหาไม่ได้แยกไปที่ Webform ดังนั้นจึงไม่มีเหตุผลที่จะโพสต์ลงในคิวปัญหาของพวกเขา

วิธีการแก้ไขจุดบกพร่องอื่น ๆ ที่ฉันสามารถดึงออกมาเพื่อช่วยกำจัดข้อบกพร่องนี้? หากฉันปิดการใช้งานทุกโมดูลโดยไม่ถอนการติดตั้งจำเป็นต้องสำรองข้อมูล FTP ทั้งหมดหรือเพียงแค่ใช้ SQL?

แก้ไข: บางสิ่งเพิ่มเติมที่ฉันได้ลองตามคำแนะนำ (ไม่สำเร็จ)

  • กำหนด $ cookie_domain และ $ base_url อย่างชัดเจนใน settings.php
  • ค้นหาโมดูล Trigger และ Action เพื่อดูการเปลี่ยนเส้นทางที่อาจผิดพลาด

คุณได้ตรวจสอบทริกเกอร์ / การกระทำหรือกฎที่ทำให้เกิดการเปลี่ยนเส้นทางที่อาจทำให้เกิดการผิดพลาดหรือไม่?
Patrick Kenny

@PatrickKenny น่าเสียดายที่ไม่มีลูกค้าที่มุ่งหวังในหน้า UI ของ Trigger หรือ Action module
Morgan Delaney

ตรวจสอบให้แน่ใจว่าคุณกำลังใช้ settings.php ที่เหมาะสมว่าค่าของ $ base_url และ $ cookie_domain ถูกตั้งค่าอย่างเหมาะสมฉันแนะนำให้ใช้โฟลเดอร์การตั้งค่าหลายรายการสำหรับการตั้งค่าที่แตกต่างกันของคุณ แต่ละฐานข้อมูลมีการตั้งค่า $ base_url และ $ cookie ทำให้การแก้ไขปัญหาง่ายขึ้นตามความเห็นของฉัน
stefgosselin

คำตอบ:


2

ฉันไม่เคยมีปัญหาใด ๆ กับโมดูลเว็บฟอร์ม แต่ถ้ามันเกิดขึ้นกับฉันฉันจะเป็นคู่ของเว็บไซต์ตรวจสอบ / default / setting.php เพื่อดูว่ามีการตั้งค่าใด ๆ สำหรับชัดเจนหรือ$base_url $cookie_domainสิ่งหลังนี้ไม่น่าเป็นไปได้มากนักเนื่องจากคุณอาจมีปัญหากับการลงชื่อเข้าใช้


แดง ฉันพยายามเพิ่มนี้ด้านล่างของเว็บไซต์ / default / settings.php: pastebin.com/94PBeeiG ที่ไม่ได้ทำงาน แต่ขอบคุณสำหรับการตอบสนอง! (ฉันหมดหวังอย่างแน่นอน)
Morgan Delaney

1

ฉันมีปัญหาเดียวกัน เช่นเดียวกับเดนนิสปัญหาเกิดจากการใส่ชื่อแทน URL บนโหนดเว็บฟอร์ม เมื่อฉันลบนามแฝงและทำ URL เต็มแล้วมันก็ใช้ได้ดี ในกรณีของฉันมีข้อขัดแย้งเพราะนามแฝง URL ที่ฉันเลือกมีค่าเท่ากับชื่อไดเรกทอรีในเว็บไซต์ของฉัน ดังนั้นฉันสามารถใช้นามแฝงอื่นและทำงานได้ดี ฉันไม่สามารถใช้ชื่อแทนที่ฉันต้องการเว้นแต่ฉันจะเปลี่ยนชื่อไดเรกทอรีที่ขัดแย้งบนเว็บไซต์ของฉัน


0

ฉันเพิ่งได้รับปัญหานี้อย่างแน่นอน ฉันพบว่าปัญหาคือรูปแบบที่มีการเปลี่ยนแปลงในทางที่ป้องกันไม่ให้เว็บฟอร์มเข้าใจมัน เท่าที่ฉันจะบอกได้ว่า $ form_state ไม่ได้รับผลกระทบจากการเปลี่ยนแปลง แต่การเปลี่ยนรูปแบบ $ นั้นยังเพียงพอที่จะทำลายทุกสิ่ง

ฉันยังไม่พบวิธีแก้ปัญหา ฉันจะอัปเดตคำตอบถ้ามี

อัปเดต: สำหรับวิธีแก้ปัญหาของฉันฉันใช้ #prefix และ #suffix เพื่อเพิ่มมาร์กอัปไปยังองค์ประกอบแทนที่จะใส่ไว้ในแบบฟอร์มคอนเทนเนอร์ วิธีนี้แก้ไขปัญหาได้


ฉันมีปัญหาที่คล้ายกันที่นี่ซึ่งการปรากฏตัวของเขตข้อมูลบางอย่างลบ#nodeองค์ประกอบซึ่งการส่ง / การตรวจสอบซากปรักหักพัง
njp

0

ฉันต้องการเพิ่มสองเซ็นต์ของฉันที่นี่คุ้มค่า ฉันมีปัญหาเดียวกันในไซต์ dev ไซต์จะใช้งานได้ในเร็ว ๆ นี้ แต่ฉันกำลังตรวจสอบการทำงานและได้รับปัญหาเดียวกันนี้มาก

ปัญหาเกิดจากการใส่ชื่อแทน URL บนโหนดเว็บฟอร์ม เมื่อฉันลบนามแฝงและทำ URL แบบเต็ม (mysite.com/?q=node/8) มันก็ใช้ได้ดี

นอกจากนี้ฉันไม่ได้เปิดใช้งาน URL แบบใหม่ทั้งหมดเพื่อที่จะแก้ไขปัญหาด้วยชื่อแทน URL

แต่ฉันอยากจะโยนเรื่องนี้ให้คนอื่นที่มีปัญหา . .


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.