-1

私はここで推奨した後にPDOを使用することに決めました、そして私はこのコードを以下で見つけました。これらのコードは、SQ1インジェクションを防ぐのに十分ですか?そして、クラスはより良いオプションですか?

<?
class database {

private $hostname;
private $database;
private $username;
private $password;
private $pdo;
function __construct($hostname, $database, $username, $password) {

$this->pdo = new PDO("mysql:host={$this->hostname};port={$this->port};dbname={$this->database}", $this->username, $this->password, array(PDO::ATTR_PERSISTENT => true));

} catch(PDOException $e) {

print "<b>Error - Connection Failed: </b>" . $e->getMessage() . "<br/>";
die();
}
}

public function query($query, $bind = null) {
global $pdo;

$this->statement = $this->pdo->prepare($query);
$this->statement->execute($bind);
}



$date = date("Y-m-d H:i:s", time());

$database->query('INSERT INTO users_inactive(verCode, username, password, email, date) VALUES (?, ?, ?, ?, ?)', array($verCode, $username, $password, $email, $date));

$success[] = "You account has been created!";

?>
4

1 に答える 1

1

このコードには、構文エラー、省略形、およびグローバルが含まれています。いいえ、使用するには十分ではありません。

于 2012-07-27T16:39:42.550 に答える