php 회원가입에서 회원등록실패를 했는데, DB테이블엔 저장되고 있습니다.

php 회원가입에서 회원등록실패를 했는데, DB테이블엔 저장되고 있습니다.

QA

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

https://www.php.net/manual/en/mysqli.affected-rows.php

mysqli_affected_rows($link)

파라미터가 빠졌습니다.

총갯수를 구하시는거라면 
$tot_row = mysqli_num_rows($link); 
를 활용하셔도 됩니다.

 

여튼 tot_row 에서 집계가 제대로 되지 않아 생긴 문제 같습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 661
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT