我正在尝试将我的Web应用程序连接到sql服务器数据库,但出现错误。
这是我在mvc中的第一个项目。请检查我的编码模式是否有问题。
控制器:hello.php
class Hello
{
public function _construct()
{
parent::construct();
}
public static function index()
{
$this->view->allrecords = $this->Index_model->getAllrecords();
$this->view->render('views/index');
}
}
lib:Db.class
class Db {
public static $db;
const SERVER = "";
const SCHEMA = "";
const USER = "";
const PASS = "";
public static function databaseConnection() {
if (!self::$db) {
try {
$databse = "sqlsrv:server=" . self::SERVER . ";Database=" . self::SCHEMA;
self::$db = new PDO($databse, DB::USER, DB::PASS);
self::$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("Error " . $e->getMessage());
}
}
return self::$db;
}
}
型号:index_model.php
<?php
require_once '../lib/Db.class';
class Index_model
{
public static function _construct() {
parent::_construct();
}
public static function getAllrecords(){
$db = Db::databaseConnection();
$sql = "SELECT Goals from Goals";
$stmt = $db->conn->prepare($sql);
$stmt->execute();
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
return $data;
}
}
查看:index.php
<?php
require_once '../models/index_model.php';
require_once '../controllers/hello.php';
?>
<table border="2" id="internalActivities" style="width:100%" class="table
table-bordered">
<tbody>
<tr>
<th>Goals</th>
<?php echo Index_model::getAllrecords(); ?>
</tr>
</tbody>
我不确定错误可能在哪里。我在其他应用程序中一直使用相同的代码进行连接。只是我在mvc模式中使用它,所以模式中可能有错误。 我想在“目标”表中显示“目标”列表。