Hướng dẫn how stop resending data refresh in php? - làm thế nào để dừng gửi lại dữ liệu làm mới trong php?

Priyanka,

Bạn đang đi đúng hướng. Những gì bạn đang cố gắng thực hiện thực sự là một mẫu nổi tiếng được sử dụng trong phát triển web được gọi là mẫu Post/Redirect/Get. [Mẫu là một từ của một từ buzz bây giờ một ngày, vì vậy có lẽ mô hình là một từ tốt hơn cho điều này].

Một triển khai phổ biến của mô hình/mô hình này chỉ đơn giản là chỉ có một điểm nhập cảnh.

Bằng cách này, bây giờ add_user.php có thể trông như thế này [nó vẫn không phải là thanh lịch nhất, nhưng hy vọng nó sẽ cho bạn ý tưởng về cách thực hiện nó]:



Thank you

You details have been submitted succesfully.

Vì vậy, cách nó hoạt động về cơ bản là thế này:

  • Nếu yêu cầu được thực hiện cho tập lệnh không phải là một yêu cầu POST [tức là mẫu chưa được gửi] và không có ?message=success được thêm vào URL thì chỉ cần hiển thị một biểu mẫu sạch.
  • Nếu yêu cầu được thực hiện cho tập lệnh là một yêu cầu POST, thì hãy xử lý biểu mẫu.
    • Nếu xử lý biểu mẫu thành công, chuyển hướng đến cùng một tập lệnh và nối lại ?message=success
      • Nếu yêu cầu cho tập lệnh là một yêu cầu với ?message=success được thêm vào nó chỉ hiển thị thông báo cảm ơn, đừng hiển thị biểu mẫu.
    • Nếu xử lý biểu mẫu không thành công, thì hãy để nó 'rơi vào' và hiển thị lại biểu mẫu, nhưng lần này với một số thông báo lỗi mô tả và với các yếu tố biểu mẫu chứa đầy những gì người dùng đã điền vào.

Hy vọng điều này, cùng với ví dụ tôi đã đưa ra cho bạn, có đủ ý nghĩa.

Bây giờ, lý do bạn nhận được tin nhắn Warning: headers already sent khét tiếng được giải thích trong câu trả lời này tôi đã đưa ra cho một câu hỏi khác về lý do tại sao một số cuộc gọi PHP nhất định sẽ tốt hơn để đặt lên đầu một tập lệnh [thực ra, nó không nhất thiết phải đứng đầu, Nhưng nó phải được gọi trước khi bất kỳ đầu ra nào [thậm chí [vô tình] khoảng trắng] đang được đầu ra].

Đây là tệp Suppadd.php của tôi

 
   

Add Supplier

   
                                       
                Supplier Name *                            
                                 
                Supplier Address *                            
                       
                Supplier Phone                            
                       
                Supplier Email                            
                       
                Supplier Website                            
                     
                           
                   
       
                See All Supplier List            
           
 
   
              var frmvalidator  = new Validator["suppadd"];         frmvalidator.EnableMsgsTogether[];                         frmvalidator.addValidation["txtsuppname","req","Enter Supplier Name!"];             frmvalidator.addValidation["txtsuppadd","req","Enter Supplier Address!"];             frmvalidator.addValidation["txtsuppsys","req","Enter Supplier System Id!"];             frmvalidator.addValidation["txtsuppmail","email","Enter valid Email!"];             frmvalidator.addValidation["txtsuppadd","maxlen=250","Address Not More Than 250 Character!"];                

& đây là tệp Suppsave.php của tôi

Bài Viết Liên Quan

Chủ Đề