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

(그누보드x) 게시판 글 수정 시, 비밀번호가 틀려도 수정되는 오류 질문 채택완료

qoqofh 4년 전 조회 2,004

게시판을 그누보드가아닌, 일반 적으로 자체제작 하여보았는데,

 

글 수정을 누른 후, 글을수정하게 되면 비밀번호가 일치할 경우에만 수정이 되어야하는데, 현재 비밀번호가 틀려도 수정이 되고 있는 상태입니다..ㅠㅠ 코드상에 문제가 있는건데 해결점을 찾기 위해 질문을 드려봅니다 ㅠㅠ

 

</p>

<p><?php

include "../data/dbconfig.php";</p>

<p>$bno = $_GET['idx'];

$username = $_POST['name'];

$userpw = password_hash($_POST['pw'], PASSWORD_DEFAULT);

$title = $_POST['title'];

$content = $_POST['content'];

$sql = mq("update board set name='".$username."',pw='".$userpw."',title='".$title."',content='".$content."' where idx='".$bno."'");</p>

<p>$bno = $_POST['b_no']; //게시글 번호

$sql2 = mq("select * from board where idx='".$bno."'");//board테이블에서 idx가 bno변수에 저장된 값을 찾음

$board = $sql2->fetch_array();</p>

<p>$pwk = $_POST['pw'];

$bpw = $reply['pw'];</p>

<p>if (password_verify($pwk, $bpw)) {

$sql3 = mq("update reply set content='".$_POST['content']."' where idx = '".$rno."'");//reply테이블의 idx가 rno변수에 저장된 값의 content를 선택해서 값 저장

?> 

<script type="text/javascript">alert('수정되었습니다.'); location.replace("./view.php?idx=<?php echo $bno; ?>");</script>

<?php

} else { ?>

<script type="text/javascript">alert('비밀번호가 틀립니다');

history.back();

</script>

<?php } ?>

 </p>

<p>

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

답변 1개

채택된 답변
+20 포인트

</p>

<pre>
<code><?php
include "../data/dbconfig.php";
$bno = $_GET['idx'];
$username = $_POST['name'];
$userpw = password_hash($_POST['pw'], PASSWORD_DEFAULT);
$title = $_POST['title'];
$content = $_POST['content'];

$bno = $_POST['b_no']; //게시글 번호
$sql2 = mq("select * from board where idx='".$bno."'");//board테이블에서 idx가 bno변수에 저장된 값을 찾음
$board = $sql2->fetch_array();
$pwk = $_POST['pw'];
$bpw = $reply['pw'];
if (password_verify($pwk, $bpw)) {
$sql3 = mq("update reply set content='".$_POST['content']."' where idx = '".$rno."'");//reply테이블의 idx가 rno변수에 저장된 값의 content를 선택해서 값 저장
$sql = mq("update board set name='".$username."',pw='".$userpw."',title='".$title."',content='".$content."' where idx='".$bno."'");
?> 
<script type="text/javascript">alert('수정되었습니다.'); location.replace("./view.php?idx=<?php echo $bno; ?>");</script>
<?php
} else { ?>
<script type="text/javascript">alert('비밀번호가 틀립니다');
history.back();
</script>
<?php } ?></code></pre>

<p>

update board   <= 시키는 구문이 

if (password_verify($pwk, $bpw)) { 이후에 들어가야 합니다

 

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

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

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

로그인