mysql fetch_array에러
본문
<?php
include ('dbc.php');
$board_id = $_GET['id'];
$sql = mq("SELECT * FROM board order by idx desc limit 0,2");
echo $sql;
while($board = fetch_array($sql))
{
$title=$board["title"];
if(strlen($title)>30)
{
$title=str_replace($board["title"],mb_substr($board["title"],0,30,"utf-8")."...",$board["title"]);
}
--------------------------------------------------
#dbc.php
<?php
session_start();
header('Content-Type: text/html; charset=utf-8');
$db = new mysqli("localhost","","","");
$db->set_charset("utf8");
function mq($sql)
{
global $db;
return $db->query($sql);
}
?>
이렇게 돌리면
Fatal error: Uncaught Error: Call to undefined function fetch_array() in C:\xampp\htdocs\bimain.php:30 Stack trace: #0 {main} thrown in C:\xampp\htdocs\bimain.php on line 30
라고 오류가 뜨는데 한번 봐주실수있을까요.. ㅜㅜ
답변 6
fetch_array() 함수는 못 봤습니다.
그누면 sql_fetch_array() 함수 사용 가능하고,
그냥 php면 mysqli_fetch_array() 함수 사용 하셔야....
디비 연결부에 디비 아이디 암호를 넣어도 에러가 나는가요
fetch_array가 그누보드에서 만든 접근용 함수로 기억하고 있는데
함수 정의가 되어 있는지 혹은 그누보드 디비관련 페이지가 인클루드 되어 있는지 한번 확인해 보세요
왜 그누로 있던 쿼리 함수 안쓰세요 보안적으로 좋은데요
fetch_array 아니고
sql_fetch_array 쓰셔야 합니다
include ('dbc.php');
mq()
fetch_array()
이들 함수가 dbc.php 안에 있지 않을까요? 오타가 있어서 함수를 못 찾고 있는 거 같습니다.
댓글달아주신대로 fetch_array() 가아닌 php라서 mysqli_fetch_array 라고 쓰고 다시 돌려봤는데
Cannot redeclare mysqli_query() in C:\xampp\htdocs\lib.php on line 12
lib.php
<?php
session_start();
header('Content-Type: text/html; charset=utf-8');
$db = new mysqli("localhost","root","","");
$db->set_charset("utf8");
function mysqli_query($sql)
{
global $db;
return $db->query($sql);
}
?>
오류가뜨는데 구글링해도 잘 안나오네요 ㅜㅜㅜㅜ