par
IxeX » 08 juin 2006, 20:02
Dans ma classe, j'ai le code suivant pour créer une requête de modification :
// --- clé primaire
if (strlen($params['cle_primaire']) > 0) { ----------> 'l.189'
$cle_primaire = $params['cle_primaire'];
}
else {
$cle_primaire = 'id';
}
avec le msg d'erreur suivant à la ligne 'l.189' :
Parse error: parse error, unexpected T_IF, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /
une piste ? merci d'avance
En annexe la totalité du code :
// --- création d'une requête de modification dans une table
function creation_requete_modification($tbl,
$tbinfos, $id, $params='') {
$id = intval($id);
if (!$tbl
|| !is_array($tbinfos)
|| count($tbinfos)==0
|| !$id) {
return('');
}
if (!is_array($params)) $params = array();
// --- tableau des champs existants dans la table
$tb_champs = $this->tb_champs($this->db, $tbl);
// --- début de la requête
$txt_requete = "update $tbl";
// --- création des tableaux de champs et de valeurs
reset($tbinfos);
$i = 0;
while (list($cle, $valeur) = each($tbinfos)) {
// --- ajout dans la requête si le champ existe
if ($tb_champs["$cle"] == 1) {
$txt_requete .= ' set ';
}
else {
$txt_requete .= ',';
}
$valeur = $this->quote_smart($valeur);
$txt_requete .= "$cle='$valeur'";
$i++;
}
}
// --- clé primaire
if (strlen($params['cle_primaire']) > 0) {
$cle_primaire = $params['cle_primaire'];
}
else {
$cle_primaire = 'id';
}
// --- conditions
$txt_requete .= " where $cle_primaire=$id";
return($txt_requete);
}