1
나는 이것으로 너무 좌절하고있다. mysqli를 사용하여 열 값을 포함하는 배열을 만들려고합니다. 지금은 반환되는 내용을 반향 출력 할 때 아무 것도 인쇄하지 않습니다. 나는 이것을 이해할 수없는 많은 것들을 시도했다. 모든mysqli에서 stmt_fetch를 결과를 배열로 만드는 방법
<?php
class Database {
public $dbHost = '';
public $dbUser = '';
public $dbPass = '';
public $dbName = '';
public $db;
public function __construct(){
$this->dbConnect();
}
public function dbConnect(){
$this->db = new mysqli($this->dbHost, $this->dbUser, $this->dbPass, $this->dbName);
/* check connection */
if (mysqli_connect_errno()){
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}else{
echo 'connection made';
}
}
public function q($sql){
$query = $sql;
self::preparedStatement($query);
}
public function preparedStatement($query){
$i= 0; //index
$result = array();
if ($stmt = $this->db->prepare($query)){
/* execute statement */
if($stmt->execute()) {
$stmt->bind_result($name);
while($stmt->fetch()) {
$result[0] = $name;
}
} else
echo "error";
/* close statement */
$stmt->close();
} else {
echo "Prepare failed: (" . $stmt->errno . ") " . $stmt->error;
}
return $result;
}
public function __destruct(){}
}
### Test code
$db = new Database();
$res = $db->q("SELECT name FROM test");
echo $res[0];
?>
죄송합니다. 저는 인터넷 검색을하고 있었고 테스트를 거친 후에 0을 입력했고 게시하기 전에 되돌릴 수 없었습니다. 내 문제가 내 q() 함수에서 반환되지 않았습니다. 정말 고맙습니다 –