I 사용자 세션과 관련된 MySQL의 DB 컬럼 데이터를 쿼리를 기반으로 PHP는 mysqli 합계 쿼리를 작성하는 것을 시도하고있다. 따라서 스크립트는 A 열의 세션 사용자 이름과 관련된 모든 db 데이터를 가져온 다음 B 열에서 변수를 추출한 다음 B 열 변수와 일치하는 C 열 값을 합산해야합니다.
Heres는 내가 판매하는 C 열에있는 데이터의 합계가 아니라 결과로 0을 생성합니다.
같은DB 테이블 같습니다
이Column A/Column B/Column C
Bill /Sales /15.00
Helen /Sales /32.00
James /Accounts/20.00
..
현재 코드는 다음과 같습니다 환영
<?php
session_start();
$db = new mysqli('DBHOST.com', 'DBUsername', 'DBPassword', 'DBNAME');
if ($db->connect_errno > 0) {
die('Unable to connect to database [' . $db->connect_error . ']');
}
$sql = mysqli_query($db, "SELECT * FROM Table_Name WHERE ColumnA = '" . $_SESSION["username"] . "'");
$count = mysqli_num_rows($sql);
if ($count == 1) {
$output = mysqli_fetch_assoc($sql);
$columnBresult = trim($output['ColumnB']);
}
$sumquery = mysqli_query($db, "SELECT SUM(ColumnC) as total FROM Table_Name WHERE ColumnB = '$columnBresult'");
$row = mysqli_fetch_assoc($sumquery);
$sum = $row['total'];
echo $sum > 0 || $sum !== null ? $sum : "0";
?>
어떤 아이디어 모든 검사의 상단에
코드가 정상적으로 보입니다. 세션 변수에 할당 된 사용자 이름이 있는지 확인하십시오. 'print_r ($ _ SESSION)'이'session_start()'다음에 알려주는 것은 무엇입니까? – mitkosoft
세션 시작은 다른 페이지의 DB 로그인에서 이월 된 사용자 이름입니다. 올바른 값이고 DB에 있습니다. 여기에 나와 있지 않은 사용자에게 인사하는 스크립트의 일부로 페이지를 더 올려 놓았습니다. – Spanner
그냥 분명히 B 열의 Bills 관련 부서 이름을 기반으로 C 열의 총계를 얻으려고합니다. – Spanner