 |
Click ปุ่ม submit จากฟอร์ม (form) แต่ไม่ไปเรียก selectoption.php แต่ไปเรียก index.php แทน ต้องแก้ไขตรงไหนครับ |
|
 |
|
|
 |
 |
|
Code (PHP)
<form action=\"index.php\" method=\"post\" >
หรือเรียกผ่าน Ajax, fetch, axios
https://api.jquery.com/jQuery.post/
https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
https://axios-http.com/docs/multipart
|
 |
 |
 |
 |
Date :
2024-05-30 11:55:32 |
By :
Guest |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
<form action=\"เพิ่มแสลชตรงนี้selectoption.php\" method=\"post\" >
<form action=\"/selectoption.php\" method=\"post\" >
จะอ้าง จาก root เท่ากับอ้างอิงแบบนี้
www.domain.com/selectoption.php
การไม่ใส่ slash จะอ้าง พาท นะตำแหน่ง path เดิม ของ url ที่ใช้งาน
.ต้องแน่ใจว่ามันอยู่ path เดียวกัน
|
 |
 |
 |
 |
Date :
2024-05-30 15:32:06 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
<form action=\"selectoption.php\" method=\"post\" >
<form action=\"index.php\" method=\"post\" >
หรือเรียกผ่าน localhost / XAMPP
|
 |
 |
 |
 |
Date :
2024-05-30 15:32:34 |
By :
ramidabuncha |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
 |
 |
 |
 |
Date :
2024-05-30 20:51:41 |
By :
ramidabuncha |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
<form action=\"เพิ่มแสลชตรงนี้selectoption.php\" method=\"post\" >
<form action=\"/selectoption.php\" method=\"post\" >
หลังจาก ใส่ / แล้ว folder ที่เก็บไฟล์ ไม่แสดงที่ เลย error ตามภาพ

|
 |
 |
 |
 |
Date :
2024-05-30 20:56:40 |
By :
ramidabuncha |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
คุณลองไล่ path เป็นมั้ย? พอเข้าใจหลักการ relative path หรือเปล่า?
ให้ทดลองกรอก URL เข้าไปจริงๆเลยบนเบราว์เซอร์เพื่อดูว่ามันเรียกถูกมั้ย
ตัวอย่าง
http://localhost/mypage/form.php <- สมมุติว่าหน้านี้คือหน้าฟอร์ม
http://localhost/mypage/submit.php <- สมมุติว่าหน้านี้คือหน้าที่จะส่งค่าในฟอร์มไปหา
action ก็จะเป็นแค่ action="submit.php" เท่านั้น จบ. ถ้าไม่ได้หรือ 404 ก็ต้องเอา .htaccess มาดูว่ามันไป rewrite ไว้ยังไง
http://localhost/mypage/subfolder/submit.php <- สมมุติอีกว่าหน้านี้คือหน้าที่จะส่งค่าในฟอร์มไปหา
action ก็จะเป็น action="subfolder/submit.php"
http://localhost/submit.php <- สมมุติอีกกรณีว่าหน้านี้คือหน้ารับค่าฟอร์ม
action ก็จะเป็น action="../submit.php" หรือจะใช้ action="/submit.php" ก็ได้เหมือนกัน
มันก็มีอยู่แค่นี้ ลองเทียบเคียงเอาเอง
|
 |
 |
 |
 |
Date :
2024-05-31 00:04:59 |
By :
mr.v |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณมากครับ ตอนนี้สามารถ run ได้แล้ว โดยการ ลบไฟล์ .htaccess ทิ้ง แต่ก็มี error Notice: Undefined variable:
จะนบกวนสอบถามว่าถ้าจะแก้ไข ไฟล์ .htaccess ให้ถูกต้อง แล้ว Copy ไฟล์ ไปไว้ folder path เดิม ต้องแก้ไข ตรงไหนครับ เพื่อตอน run จะไม่ error ครับ ขอบคุณครับ
--------------------- .htaccess --------------------------
Header set Strict-Transport-Security "max-age=31536000" env=HTTPS
# BEGIN cPanel-generated php ini directives, do not edit
# Manual editing of this file may result in unexpected behavior.
# To make changes to this file, use the cPanel MultiPHP INI Editor (Home >> Software >> MultiPHP INI Editor)
# For more information, read our documentation (https://go.cpanel.net/EA4ModifyINI)
<IfModule php5_module>
php_flag display_errors Off
php_value max_execution_time 30
php_value max_input_time 60
php_value max_input_vars 1000
php_value memory_limit 1024M
php_value post_max_size 50M
php_value session.gc_maxlifetime 1440
php_value session.save_path "/var/cpanel/php/sessions/ea-php55"
php_value upload_max_filesize 50M
php_flag zlib.output_compression Off
</IfModule>
<IfModule lsapi_module>
php_flag display_errors Off
php_value max_execution_time 30
php_value max_input_time 60
php_value max_input_vars 1000
php_value memory_limit 1024M
php_value post_max_size 50M
php_value session.gc_maxlifetime 1440
php_value session.save_path "/var/cpanel/php/sessions/ea-php55"
php_value upload_max_filesize 50M
php_flag zlib.output_compression Off
</IfModule>
# END cPanel-generated php ini directives, do not edit
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php55” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php55 .php .php5 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit
|
 |
 |
 |
 |
Date :
2024-05-31 14:34:41 |
By :
ramidabuncha |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แน่ใจหรือว่าลบ htaccess แล้วแก้ปัญหาได้ เพราะที่ดู .htaccess ที่โพสต์มามันไม่มีส่วนไหนเกี่ยวกับการ rewrite เปลี่ยนเส้นทาง url เลย. ไม่มีแม้แต่ RewriteBase
เรื่อง undefined หรือ error ต่างๆคุณต้องตามแก้อย่างที่มันแจ้งครับ ไม่ใช่ไปอุดปากมันไม่ให้มันแสดง มันแสดงขึ้นมาเพราะโค้ดมีปัญหา. ลองค้นหาอ่านเพิ่มเติมว่าทำไมต้องตามแก้ ผมเคยเขียนไว้แล้วในเว็บนี้และที่อื่นด้วย.
และที่ดูจากที่โพสต์มาอีก มีคำสั่งปิดการแสดง error ไว้อยู่แล้ว แต่คุณบอกว่ามันแจ้งอยู่ ก็หมายความว่า PHP ที่คุณรันนั้นมันไม่รองรับคำสั่งตั้งค่าผ่าน .htaccess แต่น่าจะใช้อย่างอื่น อย่างเช่น host ที่ผมใช้จะให้ปรับแต่งได้ผ่านไฟล์ .user.ini แทน.
แต่ย้ำอีกว่า error ควรตามแก้ ไม่ใช่ปิดปากมันครับ.
|
 |
 |
 |
 |
Date :
2024-05-31 22:33:25 |
By :
mr.v |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|