변수값 db 저장 문제

변수값 db 저장 문제

QA

변수값 db 저장 문제

본문


$zzzz = $_GET['cccc'];
$time = date("Y-m-d H:i:s");
$today = date("Y-m-d");
$ip = $_SERVER['REMOTE_ADDR'];
$check_sql = "SELECT id, work_name, work_intime, work_outtime FROM very_work_time1 WHERE work_total = '$zzzz' ORDER BY work_datetime DESC LIMIT 1";
$check_result = mysqli_query($conn, $check_sql);
$result = mysqli_query($conn, "SELECT work_name, aaaa, bbbb, cccc FROM very_work_list WHERE work_id='$zzzz' ");
$row = mysqli_fetch_array($result);
$gggg = $row[0];
$data1 = $row[1];
$data2 = $row[2];
$data3 = $row[3];

if ($check_result && mysqli_num_rows($check_result) > 0) {
    $row = mysqli_fetch_assoc($check_result);
    if (empty($row['work_outtime'])) {
        if (updateWorkOutTime($conn, $row['id'], $time)) {
            $ggggg = $data2; 
        } else {
            $ggggg =  $data3;
        }
    } else {
        if (insertWorkTime($conn, $zzzz, $time, $ip)) {
            $ggggg =  $data1;
        } else {
            $ggggg =  $data3;
        }
    }
} else {
    if (insertWorkTime($conn, $zzzz, $time, $ip)) {
        $ggggg =  $data1;
    } else {
        $ggggg =  $data3;
    }
}

echo $gggg , $ggggg;
 

 

echo 출력 해보면

$gggg , $ggggg  둘다 값이 출력됩니다

$gggg 값은 사람이름이고요

$ggggg 값은 숫자입니다

 

쿼리로 db에 저장하려고 하는데요

$gggg  값은 저장이되는데

$ggggg 값은 저장이 안됩니다 ㅠㅠ

 

 

이 질문에 댓글 쓰기 :

답변 2

echo $gggg , $ggggg; 값이 제대로 들어있는지 디버깅 하여 확인해보시기 바랍니다.

 

echo "이름: " . $gggg . ", 숫자값: " . $ggggg . "<br>";

function updateWorkOutTime($conn, $id, $time) {
global $zzzz, $gggg, $ggggg;

echo "이름: " . $gggg . ", 숫자값: " . $ggggg . "<br>";

 $sql2 = "UPDATE work1111 SET gggg = '$gggg', ggggg = '$ggggg' WHERE jjjj = '99999'";
    $conn->query($sql2);

}

이렇게 해보니
이름: 서태원, 숫자값:  <- 이렇게 출력됩니다.

$gggg, $ggggg  를 글로벌 변수로 넣어 줬는데  숫자값이 안들어 가는군요 ㅍㅍ


function  밖에서는
이름: 서태원, 숫자값:3  <- 이렇게 출력됩니다.


이름은 들어가는데 숫자는 왜 안들어 갈까요?

echo "이름: " . $gggg . ", 숫자값: " . $ggggg . "<br>";

// 결과 저장 $ggggg; 숫자로 변환
$name = mysqli_real_escape_string($conn, $gggg);
$number = (int)$ggggg;

$insert_sql = "INSERT INTO my_table (name, number, created_at, ip)
              VALUES ('$name', $number, '$time', '$ip')";

if (mysqli_query($conn, $insert_sql)) {
    echo "저장 성공!";
} else {
    echo "저장 실패: " . mysqli_error($conn);
}

function insertWorkTime($conn, $userId, $time, $ip) {
    $sql = "INSERT INTO very_work_time1 (work_total, work_intime, work_datetime, work_ip)
            VALUES ('$userId', '$time', '$time', '$ip')";
    return mysqli_query($conn, $sql);
}

function updateWorkOutTime($conn, $id, $time) {
    $sql = "UPDATE very_work_time1 SET work_outtime = '$time' WHERE id = $id";
    return mysqli_query($conn, $sql);
}

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

회원로그인

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