MDB_QueryTool : Ajout de champs impossible
Bonjour,
Cela fait plusieurs heures que je suis bloqué avec ce bout de code qui refuse de marché :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
class AjaxProcess{
/**
* Fonction permettant d'ajouter des scores de joueur en BDD.
* @static
* @param array $args Tableau de paramètre (obligatoire uniquement si l'utilisateur n'a pas appellé la fonction saveOnSession() avant celle-ci).
* @return mixed
*/
static function addScore($args){
// Instantiation de la variable de retour par défaut
$return = false;
$args = (!empty($args) && count($args)==2) ? $args : null;
if(self::saveOnSession($args)){ // Cette fonctions met juste en session l'argument $args et return true si cela a bien été fait (dans mon cas true)
// Instantiation des variales a utiliser
$pseudo = isset($_SESSION['pseudo']) ? $_SESSION['pseudo'] : null;
$scores = isset($_SESSION['score']) ? $_SESSION['score'] : null;
// Test valeur
if(!empty($pseudo) && !empty($scores)){
// Instantiation et initialisation de l'objet ORM
$tableScores = new Scores();
$tableScores->reset();
// Insertion
$newScore = $tableScores->newEntity();
$newScore->pseudo = "$pseudo";
$newScore->score = (int) $scores;
// Que je fasse sans définir le champ date, ou avec l'une des proposition ci-dessus, même problème. A noter, le champ date à pour valeur par défaut "now()" qui est la date actuel
//$newScore->date = "now()";
//$newScore->date = date("Y-m-d");
//$newScore->date = null;
//$newScore->date = "";
// Modification de la valeur de retour
$return = $newScore->save();
var_dump($return); // False !
}
}
return $return;
}
// [...] Fin classe
} |
La classe score est une classe ORM :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
<?php
// Définition de la racine
$racine = "../";
$racineConfig = $racine."config/";
// Instantiation des paramètres, inclusions des fichiers requis, démarrage de la session
@include_once $racineConfig."init.php";
/**
* Cette constante définit la table liée à la classe.
*/
define('TABLE_SCORES', 'scores');
/**
* Classe de gestion de la table scores dans la base de données.
*/
class Scores extends MDB_QueryTool{
/**
* Définit la table en lien avec la classe
* @var string
*/
var $table = TABLE_SCORES;
/**
* Définit la sequence pour la table
* @var string
*/
var $sequenceName = TABLE_SCORES;
/**
* Définit la clé primaire de la table en lien avec la classe
* @var string
*/
var $primaryCol = 'score_id';
/**
* Construit l'objet voulu en appelant le constructeur du parent MDB_Querytool
*/
public function __construct(){
parent::__construct(Config::$dsn, Config::$optionsDbConnect, Config::$versionMdb);
parent::useResult('object');
}
/**
* Définit un nom court pour la table
* @var array
*/
var $tableSpec = array(
array('name' => TABLE_SCORES, 'shortName' => 'scores')
);
}?> |
Impossible de sauvegarder quoi que ce soit... HEEEEEEEEELP !
Merci d'avance...