如何使用php中的类(oops)在php中创建mysql表?
我需要使用PHP中的类创建一个MySQL表 我正在使用以下代码,但没有创建表如何使用php中的类(oops)在php中创建mysql表?,php,mysql,class,oop,create-table,Php,Mysql,Class,Oop,Create Table,我需要使用PHP中的类创建一个MySQL表 我正在使用以下代码,但没有创建表 <?php $this->query(" CREATE TABLE '$table2'( messageno INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(messageno), user_id VARCHAR, message VARCHAR,message_time DATETIME)"); ?> <?php class core {
<?php
$this->query("
CREATE TABLE '$table2'(
messageno INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(messageno),
user_id VARCHAR, message VARCHAR,message_time DATETIME)");
?>
<?php
class core {
public function __construct() {
$this->db = new mysqli('localhost','box','box','box');
}
public function query($sql) {
$this->result = $this->db->query($sql);
}
}
?>
因此,请建议更改或创建表的适当方式
我只是一个初学者,如果我问这个简单的问题,很抱歉 您在示例中将
$table
定义为no\u name
。但是您似乎在查询中使用了$table2
。这个定义在哪里
如果是:
$table = 'no_name';
$query = "CREATE TABLE {$table} (
messageno INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(messageno),
user_id VARCHAR, message VARCHAR,message_time DATETIME)";
$this->query( $query );
使用某种形式的错误处理来找出发生了什么
public function query($sql) {
if (($result = $this->db->query($sql)) !== false) {
printf("Error: %s\n", mysqli_error($this->db));
}
}
这是个不错的问题,但不够具体,你为什么不看看PHP OOP教程而不是在这里提问呢?在查询中你有
$table2
,在此之前你定义了$table
,我认为它们应该是相同的。你的mysql用户有创建权限吗?你运行查询的代码的上下文是什么,这是否在db
所属的类中的方法中?您应该在开发过程中显示错误并添加错误处理,特别是对于数据库操作。@jeroen我刚刚添加了上面问题中的代码,请检查