php 회원가입에서 회원등록실패를 했는데, DB테이블엔 저장되고 있습니다.
본문
<!DOCTYPE html>
<?
$fuserid = $_POST['fuserid'];
$fname = $_POST['fname'];
$fpasswd = $_POST['fpasswd'];
$fpasswd_re = $_POST['fpasswd_re'];
$fsex = $_POST['fsex'];
$femail = $_POST['femail'];
$userip = $_SERVER['REMOTE_ADDR'];
include "../data/connect_db.php";
if($fuserid=="" || $fname=="" || $fpasswd == "" || $fpasswd_re == "" || $fpasswd!=$fpasswd_re) {
echo "<script>
alert('*필수 입력 사항은 반드시 입력해야 합니다. ..');
history.back();
</script>";
die;
}
$sql = "select count(*) from user_tbl where userid='$fuserid'";
$res = mysqli_query($connect,$sql);
$rs = mysqli_fetch_row($res);
$reg_num=$rs[0];
if($reg_num>0){
echo "<script>
alert('[중복된 아이디]\r\n\r\n 다른 아이디를 선택하세요.');
history.back();
</script>";
die;
}
$sql = "insert into user_tbl (userid, name, passwd, sex, email, date, ip_addr)";
$sql.= "values ('$fuserid','$fname','$fpasswd','$fsex','$femail',now(),'$fuserip')";
$res = mysqli_query($connect,$sql);
$tot_row = mysqli_affected_rows();
mysqli_close($connect);
echo "등록 성공<hr />";
echo "생성 레코드 = ".$tot_row."개";
if($tot_row > 0){
echo "<script charset='UTF-8'>
alert('[등록성공]\\r\\n회원으로 등록되었습니다. ');
location.replace('login_form.php');
</script>";
} else {
echo "<script charset='UTF-8'>
alert('[등록 실패]\\r\\n 회원으로 등록을 실패했습니다. ');
history.back();
</script>";
}
?>
회원가입 폼을 만들어 보았는데, 실제 회원가입을 진행하면 alert('[등록 실패]\\r\\n 회원으로 등록을 실패했습니다. ');가 실행이 되는데, DB테이블에 들어가보니 생성은 되어있습니다......
코드상에 무엇이 문제인걸까요.,,,?
!-->답변 2
총갯수를 구하시는거라면
$tot_row = mysqli_num_rows($link);
를 활용하셔도 됩니다.
여튼 tot_row 에서 집계가 제대로 되지 않아 생긴 문제 같습니다.
답변을 작성하시기 전에 로그인 해주세요.