아작스에서 die로 메세지를 여러개 보낼수는 없나요?
본문
die("권한없음");
die("레벨업후이용해주세요");
..등등 여러개인데요
위에 메세지말고 추가적으로 변수나 이런걸 받아서
경고창만 띄울건지 새로고침할건지 페이지 이동을 할건지 이런걸 구분하려고하거든요...
그냥 if(data == "권한없음"){ 이런식으로 한글로 비교해도 되는건지..
다른방법으로 해야하는지...이럴떈 어떤식으로 해야하는지 궁굼합니다
답변 3
// 권한 없음 - 경고창만
if (!$user_permission) {
die("NO_AUTH/권한이 없습니다");
}
// 레벨 부족 - 경고창 + 페이지이동
if ($user_level < 5) {
die("LOW_LEVEL/레벨업 후 이용해주세요");
}
// 오류 발생 - 경고창 + 새로고침
if ($some_error) {
die("ERROR/처리 중 오류가 발생했습니다");
}
// 성공 - 경고창 + 새로고침
die("SUCCESS/저장이 완료되었습니다");
$.ajax({
url: 'your_file.php',
type: 'POST',
data: {/* 보낼 데이터 */},
success: function(data) {
var result = data.split('/');
var code = result[0]; // 영어 코드
var message = result[1]; // 한글 메시지
// 메시지 표시
alert(message);
// 코드에 따른 처리
if (code == 'SUCCESS') {
location.reload(); // 새로고침
} else if (code == 'LOW_LEVEL') {
location.href = '/levelup.php'; // 레벨업 페이지로
} else if (code == 'ERROR') {
location.reload(); // 새로고침
}
// NO_AUTH는 경고창만 띄우고 끝
}
});
한글로 해도 상관 없습니다.
여러개를 보내실려면 json 타입으로 보내시고 스크립트 쪽에서 원하시는데로 사용을 하시면 됩니다.
간단하게는 https://blex.me/@baealex/php%EC%97%90%EC%84%9C-ajax-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95 참고해보시면 될 거 같습니다.
die('asdfg#권한');
이렇게하고
tmp = data.split('#'):
이렇게 사용해도 됩니다
답변을 작성하시기 전에 로그인 해주세요.