나는 일부 숙박 시설 웹 사이트를 작성하고 있습니다. 나는 페이팔 (PayPal) 페이지로 클라이언트를 리디렉션하기 전에 모든 관련 데이터를 MySql 데이터베이스에 삽입해야합니다.자바 스크립트 화재 PHP 파일 및 답장을 기다려야합니다
내 질문은 : 내가 재생 키우면에 기다리지 않고 (자바 스크립트에서) PHP는 화재 어떻게
(그리고 PHP를 발사 페이지가 더 이상 아무런 문제도하지 않습니다 것입니다 존재하지 않는 것이라는 사실이)나는 일부 숙박 시설 웹 사이트를 작성하고 있습니다. 나는 페이팔 (PayPal) 페이지로 클라이언트를 리디렉션하기 전에 모든 관련 데이터를 MySql 데이터베이스에 삽입해야합니다.자바 스크립트 화재 PHP 파일 및 답장을 기다려야합니다
내 질문은 : 내가 재생 키우면에 기다리지 않고 (자바 스크립트에서) PHP는 화재 어떻게
(그리고 PHP를 발사 페이지가 더 이상 아무런 문제도하지 않습니다 것입니다 존재하지 않는 것이라는 사실이)AJAX를 사용하십시오. 관련 데이터가있는 적절한 PHP 스크립트에 XMLHttpRequest을 보내고 스크립트에서 성공적인 응답을 받으면 클라이언트를 리디렉션하십시오.
예,이 옵션을 마지막으로 사용했습니다. 페이지 전체에 모든 데이터를 드래그하고 싶지 않았습니다 ... 자바 스크립트를 사용하지 않는 경우 ... 내 사이트의 절반 정도가 제대로 작동하지 않습니다. – ori
데이터를 데이터베이스에 삽입하고 Paypal 페이지로 리디렉션해야하는 경우에는 양식을 서버에 게시하고 데이터를 데이터베이스에 쓴 다음 클라이언트로 리디렉션을 다시 보냅니다. 그래서 : 그것은 자바 스크립트로이있는 경우
<?php
// save data to database
header('Location: http://www.paypal.com');
exit;
나는 그 생각을했으면 좋겠다! –
, 나는이 정상 AJAX 작업 할 것 (JQuery based Ajax 여기를 참조하십시오.)
을 내가 요청을 시작하지만, 그것은 위험한 찾을 수 없습니다 답장을 기다리십시오. 사용자의 네트워크가 정체되어 있고 요청이 클라이언트 측에서 대기해야하고 사용자가 다음 페이지로 진행하기 전에 절대로 내 보내지 않으면 어떻게됩니까? success
이벤트를 기다리는 것이 더 좋습니다.
JavaScript를 사용하면 JavaScript가 꺼져 있거나 JavaScript 오류가 발생하면 중요한 데이터가 데이터베이스에 기록되지 않고 쇼핑 절차가 계획대로 진행될 수 있다는 단점이 있습니다. 이것이 정말로 당신이 원하는 것인지 확인하십시오. Cletus의 header
기반 접근 방식은 확실히 가장 안전합니다.
당신은 AJAX와 아마 jQuery와 같은 자바 스크립트 프레임 워크를 조사해야합니다. –