これを機能させる際の問題:
私はこのクエリ文字列を(変数として)入れています:
"query" =>
"CREATE TABLE
users(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
date_created DATETIME,
last_active DATETIME,
last_logged_in DATETIME,
first_name VARCHAR(255),
last_name VARCHAR(255),
email VARCHAR(255),
password VARCHAR(255),
permissions INT,
status SMALLINT
)"
このループに:
foreach( $queryStrings as $queryString )
{
$query = Database::Query( $queryString[ "query" ] );
if( $query )
{
echo "Database table " . $queryString[ "name" ] . " successfully created<br />";
}
else
{
echo "Database table " . $queryString[ "name" ] . " failed to create<br />";
}
}
Database:Queryはここにあります:
public static function Query( $query )
{
$query = self::$mysqli->real_escape_string( trim( $query ) );
if ( $query = self::$mysqli->prepare($query) )
{
$query->execute();
$DatabaseQuery = new DatabaseQuery();
$DatabaseQuery->result = $query->get_result();
$DatabaseQuery->mysql_num_rows = $query->num_rows();
$query->close();
return $DatabaseQuery;
}
echo false;
}
それは通り抜けることができません:
if ( $query = self::$mysqli->prepare($query) )
それが準備している文字列はここにあります:
CREATE TABLE \r\n users(\r\n id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,\r\n date_created DATETIME, \r\n last_active DATETIME,\r\n last_logged_in DATETIME,\r\n first_name VARCHAR(255),\r\n last_name VARCHAR(255),\r\n email VARCHAR(255), \r\n password VARCHAR(255), \r\n permissions INT, \r\n status SMALLINT\r\n )