테스트 사이트 - 개발 중인 베타 버전입니다

아작스에서 die로 메세지를 여러개 보낼수는 없나요? 채택완료

6개월 전 조회 1,059

die("권한없음");

die("레벨업후이용해주세요");

..등등 여러개인데요

 

위에 메세지말고 추가적으로 변수나 이런걸 받아서

경고창만 띄울건지 새로고침할건지 페이지 이동을 할건지 이런걸 구분하려고하거든요...

 

그냥 if(data == "권한없음"){ 이런식으로 한글로 비교해도 되는건지..

다른방법으로 해야하는지...이럴떈 어떤식으로 해야하는지 궁굼합니다

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트

</p>

<p>// 권한 없음 - 경고창만

if (!$user_permission) {

    die("NO_AUTH/권한이 없습니다");

}</p>

<p>// 레벨 부족 - 경고창 + 페이지이동

if ($user_level < 5) {

    die("LOW_LEVEL/레벨업 후 이용해주세요");

}</p>

<p>// 오류 발생 - 경고창 + 새로고침

if ($some_error) {

    die("ERROR/처리 중 오류가 발생했습니다");

}</p>

<p>// 성공 - 경고창 + 새로고침

die("SUCCESS/저장이 완료되었습니다");</p>

<p>

 

</p>

<p>$.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는 경고창만 띄우고 끝

    }

});</p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

die('asdfg#권한');

이렇게하고

tmp = data.split('#'):

이렇게 사용해도 됩니다

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

한글로 해도 상관 없습니다.

여러개를 보내실려면 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 참고해보시면 될 거 같습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

한가지만 더 여쭙겠스빈다 위에 링크보고 따라해보고 있는데.. 너무 어려워서요..ㅜㅜ
영어로된 코드1개와 한글메세지1개 이렇게 2개를 가져올건데도 json 으로 가져와야하나요?
혹시 좀더 간단한 방법은 없나요...

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인

전체 질문 목록

🐛 버그신고