首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >面向对象和过程化Mysqli帮助?

面向对象和过程化Mysqli帮助?
EN

Stack Overflow用户
提问于 2009-11-07 01:58:50
回答 2查看 472关注 0票数 1

asked a question earlier和一个用户说,看起来我是oddly mixing the OO and procedural style usage of mysqli,我应该坚持一个或另一个。

有没有人可以告诉我我的代码到底出了什么问题,以及我的代码在面向对象和过程化形式下应该是什么样子。我现在有点好奇,因为我的代码似乎对我来说是有效的,但话说回来,我对PHP和MySQL还是相当陌生的,我想学习正确的方法。

下面是代码。

代码语言:javascript
复制
// Query member data from the database and ready it for display
$mysqli = new mysqli("localhost", "root", "", "sitename");
$dbc = mysqli_query($mysqli,"SELECT users.*, categories.*, users_categories.* FROM users_categories INNER JOIN users ON users_categories.user_id = users.user_id INNER JOIN categories ON users_categories.category_id = categories.id WHERE users_categories.user_id=3");

if (!$dbc) {
    // There was an error...do something about it here...
    print mysqli_error($mysqli);
}
EN

回答 2

Stack Overflow用户

发布于 2009-11-07 02:00:35

代码语言:javascript
复制
// Query member data from the database and ready it for display
$mysqli = new mysqli("localhost", "root", "", "sitename");
$dbc = $mysqli->query("SELECT users.*, categories.*, users_categories.* FROM     users_categories INNER JOIN users ON users_categories.user_id = users.user_id INNER JOIN categories ON users_categories.category_id = categories.id WHERE users_categories.user_id=3");

if (!$dbc) {
    // There was an error...do something about it here...
    print $mysqli->error();
}

我不认为你应该以这种方式开始学习oop。我推荐你http://php.net/manual/en/oop5.intro.php

票数 2
EN

Stack Overflow用户

发布于 2009-11-07 02:02:53

我在过去用过这个,不知道它是否有帮助,因为这不是你问题的真正答案,但可能有用。

代码语言:javascript
复制
    <?php // cnxVars
    class cnxVars {

 private $host = "localhost";
 private $host_un = "username";
 private $host_pass = "test123";
 private $host_db = "si";

 public function cnx() { // Connect to MySQL
  $this->cnx = mysql_connect($this->host, $this->host_un, $this->host_pass) or mysql_error(); }

 public function db() { // Select DB
  return mysql_select_db($this->host_db, $this->cnx) or mysql_error(); }


    } // End cnxVars ?>

然后你可以这样做

代码语言:javascript
复制
$mysql = new cnxVars();
$mysql->cnx();
$mysql->db();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1689257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档