Jusqu'à présent, j'ai le code ci-dessous qui fonctionne très bien en essayant une instruction de mise à jour, de suppression ou de sélection. Cependant, je rencontre des problèmes lorsque j'essaie d'utiliser un insert. Si quelqu'un pouvait me diriger dans la bonne direction, je serais reconnaissant.Instructions MySQL orientées objet, PHP
private function escape($value)
{
if(get_magic_quotes_gpc())
$value = stripslashes($value);
return mysql_real_escape_string($value, $this->dbConn);
}
/**
* Handles connection to the database.
* Die functions are used to catch any errors.
*/
public function connect($dbHost, $dbName, $dbUser, $dbPass)
{
$this->dbConn = mysql_connect(
$dbHost,
$dbUser,
$dbPass
) or die(mysql_error());
mysql_select_db($dbName, $this->dbConn) or die(mysql_error());
}
/**
* Loads a raw SQL string into the object $dbSql variable
*/
public function prep($sql)
{
$this->dbSql = $sql;
}
/**
* Load bound hooks and values into object variable
*/
public function bind($hook, $value)
{
$this->dbBind[$hook] = $this->escape($value);
}
/**
* Runs the SQL string in $dbSql object variable
*/
public function run()
{
$sql = $this->dbSql;
if(is_array($this->dbBind))
foreach($this->dbBind as $hook => $value)
$sql = str_replace($hook, "'" . $value . "'", $sql);
$this->dbQuery = mysql_query($sql) or die(mysql_error());
$this->dbBind = array();
return $this->numRows();
}
// Load SQL statment into object
$MyDB->prep("INSERT INTO `demo` (`id`, `name`, `score`, `dept`, `date`) VALUES '1','James Kablammo', '1205550', 'Marketing', '$date'");
// Bind a value to our :id hook
// Produces: SELECT * FROM demo_table WHERE id = '23'
$MyDB->bind(':id',1);
// Run the query
$MyDB->run();
/moi fonctionne plus ce que votre code fait et crie à l'agonie. –