채택완료

핵초보입니다..mysqli 코드오류좀 봐주실 능력자분 계신가요 ㅠ

2018-10-26 (금) 09:05:30 3,796
44   <?php
45     $conn = mysqli_connect('생략','생략','생략','생략');
45     $sql = "SELECT count(*) FROM g5_write_portfolio WHERE ca_name = 'Web'";
46     $row = mysqli_query($conn, $sql);
47     $result = mysqli_num_rows($row);
48  
49     echo $result;
50   ?>

연습겸 이런식으로 작성을 해봤는데요.

코드가 엄청 틀려서 이게 뭐지..? 하실수 있으시겠지만 초보인점 양해부탁드립니다..

이렇게 하면 오류는 아래와 같이 뜹니다.. 

Warning: mysqli_connect(): (HY000/1130): Host '112.175.184.69' is not allowed to connect to this MySQL server in /host/home/jaejung/html/skin/latest/gallery/latest.skin.php on line 45

Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in /host/home/jaejung/html/skin/latest/gallery/latest.skin.php on line 47

Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, null given in /host/home/jaejung/html/skin/latest/gallery/latest.skin.php on line 48

갓시작한 초보라서 막 틀렸을수도있는데 봐주시면 감사하겠습니다 ㅠ

방금 확인해봤는데 php버전은 5.6 이네요.

|

답변 1개 / 댓글 6개

채택된 답변
+20 포인트

그누보드면 설치되어 있다면 되어 있습니다.

따로 연결해서 연습하시는거라면

 mysqli_connect('localhost''my_user''my_password''my_db');

정보가 틀린게 없는지 확인을 먼저 해보세요.

답변에 대한 댓글 6개

44 <?php
45 $sql = "SELECT * FROM g5_write_portfolio WHERE ca_name = 'Web'";
46 $row = mysqli_num_rows($sql);
47
48 echo $row;
49 ?>

이렇게 수정해봤는데
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, string given in /host/home/jaejung/html/skin/latest/gallery/latest.skin.php on line 46

이런 오류문구가뜨네요.. 흠
궁금해서 그러느데 혹시 호스팅에 따라 mysqli을 지원안하거나 그런 원인도 있나요?
지원하는 호스팅입니다.

요즘 지원안하는 곳이 없을겁니다.

참고 링크대로 해보세요.

rows 를 가져오려면 쿼리먼저 날려야지요 rows 에 쿼리를 바로 넣으면 안됩니다.
계속 질문을 드려 죄송합니다 ㅠ
쿼리 먼저 날리라는게 mysqli_query(); 를 하시라는게 맞으신거죠?

그렇다면 만약 DB를 다른 곳에서 연결해서 연습하는게 아니라면
말씀주신대로 그누보드는 이미 연결이 되어있기때문에
mysqli_connect('localhost', 'my_user', 'my_password', 'my_db'); 를 쓰지 않을텐데.

그렇다면 mysqli_query('DB','쿼리'); 을 할때 저기 DB부분엔 뭘 삽입해야하나요..
포트폴리오 게시판의 Web 카테고리의 개수를 뽑고싶은건가요?

$sql = "SELECT count(*) as cnt FROM g5_write_portfolio WHERE ca_name = 'Web'";
$count = sql_fetch($sql);
echo $count['cnt'];

해보세요.

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