2014-11-28 1 views
1

사용자가 자신의 글을 수정할 수있는 포럼을 만들고 있습니다. 어떻게 그렇게 할 생각이 없지만, 다음과 같이 뭔가를 시도 :게시물 편집 AJAX, PHP, javascript


PHP 코드는 게시물을 보여

while($row = $result->fetch_assoc()) { 

echo "<div class='postclass'>"; 
echo "<span id='postspan".$row['id']."' name='postspan".$row['id']."' >"; 
echo "<span id='editspan".$row['id']."' name='editspan".$row['id']."' >"; 

echo "</br>"; 

echo "Posted By: &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <span class='bold'> ".$row['user']."</span>"; 
if($username==$row['user']){ 
    echo "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp"; 

    echo "<a href='javascript:void(0);' onclick='deletepost(".$row['id'].")' >DELETE </a>&nbsp&nbsp&nbsp"; 

    echo "<a href='javascript:void(0)' onclick='editpost(".$row['id'].",'".$row['subject']."','".$row['post']."')' >EDIT </a></br>"; 
    }else{ 
     echo "</br>"; 
} 

편집 링크가있을 때 호출되는 자바 스크립트 함수 클릭 한

function editpost(postid,subject,post){ 

    var xmlhttp=new XMLHttpRequest(); 
    xmlhttp.onreadystatechange=function() { 
     if (xmlhttp.readyState==4 && xmlhttp.status==200) { 

      document.getElementById("editspan"+postid).innerHTML=xmlhttp.responseText; 

     } 
    }; 
    xmlhttp.open("GET","editpost.php?pid="+postid+"&subject="+subject+"&post="+post,true); 
    xmlhttp.send(); 
} 

editpost.php 페이지


내가 편집 버튼 아무것도 발생하지 클릭

$pid=$_GET['pid']; 
$subject=$_GET['subject']; 
$post=$_GET['post']; 
}else{ 
    $pid=""; 
    $subject=""; 
    $post=""; 
} 
echo "<form method='POST' action='globalwall.php'> 
    <p>Subject: 
     <label for='subject'></label> 
     <input type='text' name='subject' id='subject' value='".$subject."' /> 
    </br> 
    </p> 
    <p>Post: <br /> 
     <label for='post'></label> 
     <textarea name='post' id='post' cols='45' rows='5' value='".$post."'></textarea> 
    </p> 
    <p> 
     <input type='submit' name='postbutton' id='postbutton' value='Edit' /> 
    </p> 
</form>"; 
. 비록 내가 자바 스크립트 함수에 경고 메시지를 배치하더라도, 그것은 또한 팝업되지 않습니다. 아무도 도와 줄 수 있습니까?


+1

우선하여

echo "<a href='javascript:void(0)' onclick='editpost(".$row['id'].",".$row['subject'].",".$row['post'].")' >EDIT </a></br>"; 

라인을 교체,' – MIvanIsten

+0

생성 된 코드에 대한;'에코 "EDIT
"로'라인 편집이 잘못되었습니다. 생성 된 코드를 확인하십시오. – Icepickle

+0

@MIvanIsten 예, 이제 에코 형식이 표시됩니다. 그러나 em입니다. pty. 그러나 나는 그 형식으로 이전에 입력 된 데이터를 원합니다. – lonecoder

답변

0

당신의`에코 "EDIT
"대체

echo "<a href='javascript:void(0)' onclick='editpost(".$row['id'].",\"".$row['subject']."\",\"".$row['post']."\")' >EDIT </a></br>";