2010-02-22 4 views
0

만약 내가 코멘트가 삽입 될 때 세션 변수를 저장 중입니다 .. 그리고 내가 user_message가 저장된 후, index_php에 메시지를 표시하고 싶습니다. if isset..php/javascript

<div id="message"> 
<? echo $_SESSION["user_message"]; ?> 
</div> 

하지만 .. 그 저장 후에

을 메시지를보고, (F5) 새로 고침 사이트가 필요합니다하지만 난 변수 USER_MESSAGE 뭔가를 저장있어왔다하는 경우 원하는 : index.php에 지금이다 , 그것을 표시합니다 ..

희망 요 이해 했어.

+0

의견을 어떻게 저장하고 있습니까? 아약스? 몇 가지 코드를 보여주십시오. – Fenton

+0

JavaScript를 통해서만 해결할 수 있습니다. 메시지는 AJAX를 통해 저장해야하며 이에 따라 사이트를 업데이트해야합니다. –

답변

0

귀하의 의도를 잘 모르겠습니까? 사용자가 새로운 페이지를 새로 고치시겠습니까?

정상적인 post/get 양식을 사용하는 경우 위의 @Seb 코드를 사용하여 사용자가 원하는 페이지로 사용자 요청을 리디렉션하고 알림을 표시 할 수 있습니다.

ajax를 사용하여 의견을 보내고 있다면 페이지를 새로 고쳐야하는 ajax 호출을 생성 한 javascript 함수에 알리는 응답을 반환하고 location.href 변수를 다음과 같이 설정할 수 있습니다. 당신이 원하는 무엇을 원하는지.

그러나 댓글 페이지를 보는 모든 사용자의 페이지를 새로 고치려면 다른 사용자가 댓글을 보내면 몇 초/분마다 반복적으로 아약스를 호출해야합니다. 서버에있는 경우 location.href 변수를 사용하여 사용자를 다른 사용자로 리디렉션합니다. 주석 작성자의 컴퓨터에 저장된 세션 변수에만 의존하는 경우 원본 주석 작성자가 사이트를 사용할 때만 액세스 할 수 있으므로이 작업을 수행 할 수 없습니다.

0
<?php if(isset($_SESSION["user_message"])): ?> 
    <div id="message"> 
    <? echo $_SESSION["user_message"]; ?> 
    </div> 
<?php endif; ?> 
0

의견 양식과 동일한 페이지에 메시지를 표시하려면 Javascript를 권장합니다. 만약 당신이 jQuery http://jquery.com/을 사용한다면 당신은 뭔가를 할 수 있습니다.

$('form#CommentFormID').submit(function() { 
    var message = $('form#CommentFormID textarea#comment').html(); 
    $('body').append('<div id="message">' + message + '</div'); 
}); 

시도한 적이 없지만 정상적으로 작동합니다.

관련 문제