Page 1 of 1

Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 13/09/2012 5:15 pm
by tohkai_php

Code: Select all

1.Script: echo("<script> top.location.href='www.url.com'</script>");

2.Header: header("Location: www.url.com");
เหตุผลที่ใช้ตัวที่ 1 เพราะบางที header ไม่สามารถส่งได้เมื่อมีค่า แปลกปลอมปนเปื้อนมากับ
ส่วน header เช่น alert บางตัวที่อยู่ก่อน body หรือค่าอื่น

เหตุผลที่ใช้ตัวที่ 2 เพราะจะให้ผลเร็วกว่า ไปแบบ new resource ไปเลย อีกอย่างหลีกเลี่ยง disable javascript ได้

ผมอยากรู้ว่าเพื่อนๆ โปรแกรมเมอร์นิยมใช้ตัวไหน และเจอปัญหาการใช้อย่างไรบ้างครับ

Re: Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 14/09/2012 11:46 am
by mindphp
ใช้ meta refresh
รอให้ php ทำงาน จบ ก่อนแล้ว ค่อย Redirect ในเว็บบอร์ด แทบทุกตัวจะใช้วิธีนี้
เพื่อลดปัญหา Cookies กับ Browser

อ้างอิง
https://www.mindphp.com/forums/viewtopic ... 20&t=11187

Re: Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 17/09/2012 2:56 pm
by tohkai_php
แต่ใน เฟรมเวิก ผมเห็นจะใช้ header ถ้า ie 7 เวลา header เสีย จะ redirect ไม่ได้เลยอะ
ถ้าใช้ meta refresh ผมว่ามันเหมือนเข้าหน้าก่อนแล้วถึงไปอะ กลัวจะไม่เนียนอะครับ
ให้กลางสุดผมว่าคง javascript แต่ก็กลัว disable javascript อีกอะ

Re: Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 18/09/2012 2:18 am
by touleg
- ก่อนใช้ header ต้องให้แน่ใจว่าจะไม่มีอะไรแสดงผลก่อนหน้า และใช้ได้เฉพาะ PHP
- Javascript ใช้ได้ทุกเมื่อที่ต้องการ ทั้ง Javascript และ Server Side Script ส่วนการ disable javascript คิดว่าไม่ค่อยมีหรอกครับ เว็บส่วนมากเดี๋ยวนี้ก็ทำงานด้วย javascript ซะเยอะโดยเฉพาะ Ajax ถ้า disable ไว้ อย่าว่าแต่ redirect เลยครับทั้งเว็บก็แทบใช้งานไม่ได้แหละครับ
- meta refresh ก็ใช้ได้เหมือนกับ javascript ถ้าไม่อยากให้มันแสดงผลหน้านั้นก็อาจจะใช้ Server Side Script เข้ามาช่วยก็ได้ครับ

Re: Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 18/09/2012 11:02 am
by mindphp
ใน Framework ส่วนใหญ่ จะรวม output ไว้ใน buffer ก่อน แล้วส่งออกมาทีเดียว ถ้ามี Redirect ก็สั่ง header แทนการส่ง output ออกมา เลยจะไม่เกิดปัญหากับ browser

แต่โดยส่วนตัวชอบ Redirect แบบ phpbb3 ที่ขึ้นมาให้เปลี่ยนหน้าพร้อม สร้างลิงค์ว่าจะไปไหนต่อให้ด้วยเลย

Re: Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 19/09/2012 12:48 am
by Chayyim
mindphp wrote:ใช้ meta refresh
รอให้ php ทำงาน จบ ก่อนแล้ว ค่อย Redirect ในเว็บบอร์ด แทบทุกตัวจะใช้วิธีนี้
เพื่อลดปัญหา Cookies กับ Browser

อ้างอิง
https://www.mindphp.com/forums/viewtopic ... 20&t=11187
แล้ว header กับ javascript มันจะมีปัญหากับ cookies กรณีไหนหรอครับ หรือว่าเป็นเฉพาะ header ครับ อันนี้ไม่ทราบจริงๆครับ ปกติใช้แต่ header ครับ

Re: Redirect ใช้ header กับ javascript ต่างและเหมาะสมอย่างไร

Posted: 20/09/2012 3:45 pm
by tohkai_php
Chayyim wrote:
mindphp wrote:ใช้ meta refresh
รอให้ php ทำงาน จบ ก่อนแล้ว ค่อย Redirect ในเว็บบอร์ด แทบทุกตัวจะใช้วิธีนี้
เพื่อลดปัญหา Cookies กับ Browser

อ้างอิง
https://www.mindphp.com/forums/viewtopic ... 20&t=11187
แล้ว header กับ javascript มันจะมีปัญหากับ cookies กรณีไหนหรอครับ หรือว่าเป็นเฉพาะ header ครับ อันนี้ไม่ทราบจริงๆครับ ปกติใช้แต่ header ครับ

เดาว่าถ้าใช้ javascript จะมีการส่ง parameter ได้ยาก จึงต้องพึ่ง cookie เป่าอะ
ส่วน browser ก็จะมีปัญหาเวอชั่น เก่าๆ น่าจะประมาณนี้นะ

เพราะถ้าใช้ meta refresh ได้หมดแน่นอน