dou760663 2013-05-17 06:08 采纳率: 100%
浏览 81
已采纳

从方法调用时,构造函数属性为null

<?php
    class user {
        public $connection;
        public $host;
        public $username;
        public $password;
        public $database;
        public $port;

        public function __constructor() {
            $this->host     = "localhost"; 
            $this->username = "root";
            $this->password = "Password";
            $this->database = "database";
            $this->port     = "port";

            // Create connection
            $this->connection = new mysqli($this->host, $this->username, $this->password, $this->database, $this->port);

            // Check connection
            if ($this->connection->connect_error)
            {
                echo "Failed to connect to MySQL: " . $this->connection->connect_error;
            }
        }

        public function save ( $data ) {            
            $prop = strval($data['prop']);

            $sql = "INSERT INTO user (prop)
                    VALUES ('" .$prop. "')";

            if (!mysqli_query($this->connection, $sql))
            {
                die('Error: ' . mysqli_error($this->connection));
            }
            echo "1 record added";

            mysqli_close($this->connection);
        }
    }
?>

When running the code above I get the following warnings:

PHP Warning: mysqli_query() expects parameter 1 to be mysqli, null given in 'path' on line 32
PHP Warning: mysqli_error() expects parameter 1 to be mysqli, null given in 'path' on line 34

Any help will be much appreciated.

展开全部

  • 写回答

2条回答 默认 最新

  • douguyi3903 2013-05-17 06:10
    关注

    You are using wrong magic function for PHP constructor it should be

    __construct
    

    and not

    __constructor
    

    Check here for more reference

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?