$query = "INSERT INTO `$this->table_name` ($fields) VALUES ($values)"; $this->table_name`要用{}括起来

解决方案 »

  1.   

    $conn =mysql_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);  一般写法都是写在构造函数里的吧,可以直接声明变量的时候这样调么?
      

  2.   

    楼上的   你说的好象是对的 。。
        因为这个是由别的一个类(PDO连接数据库)改过来的 
      麻烦哪位高手帮忙修正下上边的这个类。。
      

  3.   

    这样改还是报错 ?<?php
    class BasicModel{

    protected $table_name = NULL;
    protected $_primary = NULL;  
        protected $_fieldList = NULL; //字段设置
       
       protected function set_primary($var_name){   
        $this->_primary = $var_name;
       } 
       protected function set_field_list($fieldList){   
       $this->_fieldList = $fieldList;
       }
       protected function set_table_name($table_name){
       $this->table_name = $table_name;
       }   
       
       protected function get_a_db_ob(){
       
    $db_host = "localhost";
    $db_username = "root";
    $db_password = "111111";
    $db_name = "mytestdb";

    try{
    $this->DB = new mysqli("$db_host", "$db_username", "$db_password","$db_name");
    $this->DB->query("SET Names 'UTF8'");
    $this->DB->query("set autocommit=0");
    return true;
    }catch(DBException $e){
    $this->is_error = true;
    $this->error_msg = $e->getMessage();
    return false;
    }   }
       
       protected function insert_into_DB(){
    foreach ($this->_fieldList as $field){
    $fields .= "`$field`,";
    $values .= "'".$this->$field."',";
    } $fields = trim($fields,',');
    $values = trim($values,',');
    $query = "INSERT INTO `$this->table_name` ($fields) VALUES ($values)";
    mysql_query($query,$conn) or die ("更新数据失败: ".mysql_error());
    } protected function update_to_DB(){
       $primary = $this->_primary;
    foreach ($this->_fieldList as $field){
    $update .= "`$field`='".$this->$field."',";
    }
        
    $update = trim($update,',');
       $query = "UPDATE $this->table_name SET $update WHERE `$primary`='".$this->$primary."'";
    mysql_query($query,$conn) or die ("更新数据失败: ".mysql_error());
    }

    function __destruct(){
    $this->disconnect();  
    }}
    ?>
      

  4.   

    我改了下,没有报错,你试下改下数据库名
    <?php
    class BasicModel
    {
    protected $table_name=NULL;
    protected $_primary=NULL;  
    protected $_fieldList=NULL;
    public $mysql_server_name='localhost'; 
    public $mysql_username='root'; 
    public $mysql_password=''; 
    public $mysql_database='test'; 
    function __construct()
    {
    mysql_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
    }
     
       
       protected function set_primary($var_name)
       {   
        $this->_primary=$var_name;
       } 
       protected function set_field_list($fieldList){   
      $this->_fieldList=$fieldList;
       }
       protected function set_table_name($table_name){
      $this->table_name=$table_name;
       }   
       
       protected function insert_into_DB(){
    foreach ($this->_fieldList as $field){
    $fields.="`$field`,";
    $values.="'".$this->$field."',";
    }$fields=trim($fields,',');
    $values=trim($values,',');
    $query="INSERT INTO `$this->table_name` ($fields) VALUES ($values)";
    mysql_query($query,$conn) or die ("更新数据失败: ".mysql_error());
    }protected function update_to_DB(){
      $primary=$this->_primary;
    foreach ($this->_fieldList as $field){
    $update.="`$field`='".$this->$field."',";
    }
        
    $update=trim($update,',');
      $query="UPDATE $this->table_name SET $update WHERE `$primary`='".$this->$primary."'";
    mysql_query($query,$conn) or die ("更新数据失败: ".mysql_error());
    }function __destruct(){
    $this->disconnect();  
    }}
    ?>
      

  5.   

    <?php
    class BasicModel
    {
    protected $table_name=NULL;
    protected $_primary=NULL;  
    protected $_fieldList=NULL;
    private $mysql_server_name='localhost'; 
    private $mysql_username='root'; 
    private $mysql_password='root1234'; 
    private $mysql_database='we54hddb'; 
    function __construct()
    {
    mysql_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
    }
     
       
       protected function set_primary($var_name)
       {   
        $this->_primary=$var_name;
       } 
       protected function set_field_list($fieldList){   
      $this->_fieldList=$fieldList;
       }
       protected function set_table_name($table_name){
      $this->table_name=$table_name;
       }   
       
       protected function insert_into_DB(){
    foreach ($this->_fieldList as $field){
    $fields.="`$field`,";
    $values.="'".$this->$field."',";
    }$fields=trim($fields,',');
    $values=trim($values,',');
    $query="INSERT INTO `$this->table_name` ($fields) VALUES ($values)";
    mysql_query($query,$conn) or die ("更新数据失败: ".mysql_error());
    }protected function update_to_DB(){
      $primary=$this->_primary;
    foreach ($this->_fieldList as $field){
    $update.="`$field`='".$this->$field."',";
    }
        
    $update=trim($update,',');
      $query="UPDATE $this->table_name SET $update WHERE `$primary`='".$this->$primary."'";
    mysql_query($query,$conn) or die ("更新数据失败: ".mysql_error());
    }function __destruct(){
    $this->disconnect();  
    }}
    ?>