채택완료

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

2017-09-14 (목) 17:45:11 2,471
Copy
<?$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개

채택된 답변
+20 포인트

기존 코드랑 비교해 보시고 

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

Copy
<?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'];}?>
2017-09-14 (목) 17:58:04

echo $row[name]; 


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


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

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

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

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

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

답변을 작성하려면 로그인이 필요합니다.