1
<?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);
        }
    }
?>

上記のコードを実行すると、次の警告が表示されます。

PHP 警告: mysqli_query() は、パラメーター 1 が mysqli であると想定し、32 行目の 'path' で
指定された null

どんな助けでも大歓迎です。

4

2 に答える 2

7

PHPコンストラクターに間違ったマジック関数を使用しています

__construct

ではない

__constructor

詳細はこちらをご覧ください

于 2013-05-17T14:10:34.787 に答える
0

使用する:

function __construct() {} 

それ以外の:

function __constructor() {}

PHP クラスのドキュメントを参照してください。

于 2013-05-17T14:15:09.460 に答える