sql 로 리스트 만드는중인데요 문의드립니다.

sql 로 리스트 만드는중인데요 문의드립니다.

QA

sql 로 리스트 만드는중인데요 문의드립니다.

본문


<?
$host = "localhost"; // 자신의 mysql
$user = "아이디"; // 기본 사용자. 
$password = "암호"; // apm 기본 암호
$DB_name = "데이터베이스이름"; // 데이터베이스 이름 : test
$conn = mysqli_connect($host, $user, $password, $DB_name);
mysqli_query($conn, 'set names utf8');
$rows = 25; // 한페이지에 보여질 갯수
$sql = mysqli_query($conn, "SELECT count(*) as cnt from tablename "); 
$row = mysqli_fetch_array($sql); 
$total_count = $row[cnt];
$total_page  = ceil($total_count / $rows); 
if ($page == "") { $page = 1; }
$from_record = ($page - 1) * $rows; 
$sql = mysqli_query($conn, "select * from tablename  order by no desc limit $from_record, $rows "); 
$result = mysqli_fetch_array($sql);
for ($i=0; $row=mysql_fetch_row($result); $i++)  {
echo $row[name];
}
?>


위와같이 하면 $row[cnt] 값은 잘 나오더라구요.. 그런데 ㅜㅜ

FOR 문 돌리면 아무런 자료가 나오지 않습니다...

어떻게 해야 될까요??


고수님들께 부탁드립니다. 수정해야할 부분만이라 ㅜㅜ ~ 고맙습니다.

이 질문에 댓글 쓰기 :

답변 3

기존 코드랑 비교해 보시고 

어느 부분이 다른지 확인하시면 될듯 싶습니다.



<?php
$host = "localhost"; // 자신의 mysql
$user = "아이디"; // 기본 사용자. 
$password = "암호"; // apm 기본 암호
$DB_name = "데이터베이스이름"; // 데이터베이스 이름 : test
$conn = mysqli_connect($host, $user, $password, $DB_name);
mysqli_query($conn, 'set names utf8');
$rows = 25; // 한페이지에 보여질 갯수
$sql = mysqli_query($conn, "SELECT count(*) as cnt from tablename "); 
$row = mysqli_fetch_array($sql); 
$total_count = $row['cnt'];
$total_page  = ceil($total_count / $rows); 
if (isset($page) === false) { $page = 1; }
$from_record = ($page - 1) * $rows; 
$sql = mysqli_query($conn, "select * from tablename  order by no desc limit $from_record, $rows "); 
//$result = mysqli_fetch_array($sql);
//for ($i=0; $row=mysql_fetch_row($result); $i++)  {
for ($i=0; $row=mysqli_fetch_array($sql); $i++)  {
echo $row['name'];
}
?>

select * from tablename order by no desc limit $from_record, $rows

이 쿼리 부분을 직접 찍으셔서 phpMyAdmin에서 쿼리를 확인해 보셔야 할듯 보입니다. 제대로 가져오고 있는지 확인을 해보시는게 좋을듯 합니다.

echo $row[name]; 


에서 출력되는 부분이 없다면, 


칼럼명이 'name' 이 아니거나, 'name' 칼럼에 값이 없을 가능성이 있습니다.


다음의 코드로, 칼럼명이 맞는지 또는 해당 칼럼의 값이 정상적으로 저장되어 있는 것인지 확인해볼 수 있습니다. (array 내용을 출력해주는 print_r 사용)


for ($i=0; $row = mysql_fetch_row($result); $i++)  {  
  print_r($row);
}



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

회원로그인

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