php mssql db 한개 값 가져오기 채택완료
안녕하세요. 제가 현재 MSSQL과 연결해서 한개의 값만 가져와 변수에 저장하는 코드를 작성중입니다.
우선, DB 연결하는 부분에도 성공을 했고, 이전 페이지에서 ajax로 넘겨주는 부분도 성공했기에 SELECT 쿼리에는 문제가 없는것을 확인했습니다.
코드는 다음과 같습니다.
위와 같이 코드를 작성했고, 주석에도 적어놨듯이 productCount 값을 받아오는게 목표입니다.
output을 출력해보면 쿼리문은 잘 출력하는데 productCount값을 저장한 변수인 before_count는 아무런 출력도 못합니다.
이 부분에 대해서 아시는 분 계시다면 설명 부탁드리겠습니다.
감사합니다!
답변 4개
// $result = sqlsrv_query($conn, $before_query);
$result = sqlsrv_query($connect, $before_query);
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
$before_query = "SELECT * FROM tblProduct WHERE ProductName = '$productName'";
$result = sqlsrv_query($conn, $before_query);
$before_count = '';
==
count라는 것이
WHERE ProductName = '$productName'
이 조건에 맞는 record 갯수를 원하시는 거라면
$before_query = "SELECT count(*) ProductCount FROM tblProduct WHERE ProductName = '$productName'";
$result = sqlsrv_query($conn, $before_query);
$row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC);
$before_count = $row["ProductCount"];
이렇게 하셔야 합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
mssql 드라이버함수를 그대로 쓰지 마시고, PDO 를 통해 접속객체를 만들어서 쓰세요.
그러면 mysql 이나 mssql이나 동일한 방식으로 메소드 호출이 가능합니다.
$row = $pdoconn->query("select top 1 * from table_name where condition.....")->fetch(PDO::FETCH_ASSOC);
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
if (sqlsrv_query($connect, $before_query)) {
-> 삭제
}
echo $output;
->
echo $output;
답변에 대한 댓글 3개
제가 출력하고 싶은건 $before_count입니다만,, echo $output만 두번 작성하셔서 무슨 말씀이신지 모르겠습니다.
또한 if문은 이후에 사용할 코드라 지우면 안되는데 왜 삭제하라 하신건지 알 수 있을까요?
제 눈에는 아래 코드처럼 보이는데 이렇게 작성하신게 맞을까요?
if (sqlsrv_query($connect, $before_query)) {
-> 삭제
}
echo $output;
->
echo $output;
$output .= '<label class="text-success">'.$before_query.'</label>'; // 출력 잘됨
$output .= '<label class="text-success">'.$before_count.'</label>'; // 출력 안됨
// $before_count를 이용한 쿼리 작성 예정
}
->
$output .= '<label class="text-success">'.$before_query.'</label>'; // 출력 잘됨
$output .= '<label class="text-success">'.$before_count.'</label>'; // 출력 안됨
저는 while문이 문제라 생각했는데 이부분은 고민해보겠습니다.
도와주셔서 감사합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인