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

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

김준수사랑 5개월 전 조회 1,042

die("권한없음");

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

..등등 여러개인데요

 

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

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

 

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

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

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

답변 3개

채택된 답변
+20 포인트
5개월 전

</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>

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

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

5개월 전

die('asdfg#권한');

이렇게하고

tmp = data.split('#'):

이렇게 사용해도 됩니다

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

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

5개월 전

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

여러개를 보내실려면 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개

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

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

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

로그인