//Management of codes
require_once ("Util.php");
require_once ("Formulaire.class.php");
function MngtCodes ($_POST, $codeName, $context, $db, &$tpl)
{
if (isSet($_POST['label']))
{
$message = InsertCode ($codeName, $_POST, $_POST['mode'], $db);
if (!is_numeric($message))
{
// Error reporting
$tpl->set_var("TITLE", "Error: $message");
$codif = CleanArray ($_POST);
$mode = INSERTION;
}
else
{
$tpl->set_var("TITLE", "Transaction OK");
$mode = INSERTION;
}
// Display the form
$tpl->set_var("FORM_CODIF",
FormCodif ($codeName, array(), $mode, $context));
}
else if (isSet($_GET['id']))
{
if (!isSet ($_GET['do']) or $_GET['do']=="modify")
{
// Ask for code modification
$tpl->set_var("TITLE", "Modify");
$codif = ChercheCodif ($codeName, $_GET['id'], $db);
$tpl->set_var ("FORM_CODIF",
FormCodif($codeName, $codif, MAJ, $context));
}
else
{
// Delete the code
$query = "DELETE FROM $codeName WHERE id=" . $_GET['id'];
$db->execRequete ($query);
$tpl->set_var ("FORM_CODIF",
FormCodif($codeName, array(), INSERTION, $context));
}
}
else
{
// Insert
$tpl->set_var("TITLE", "Add a code in table $codeName");
$tpl->set_var ("FORM_CODIF",
FormCodif($codeName, $_POST, INSERTION, $context));
}
// Always print the list of existing codes
$tpl->set_block("TxtCodes", "DETAIL_CODIF", "CODIFS");
$tpl->set_var ("CODIFS", "");
$query = "SELECT * FROM $codeName";
$result = $db->execRequete ($query);
while ($code = $db->objetSuivant($result))
{
$modLink = Ancre ($context . "&id=$code->id&do=modify", "Modify");
$delLink = Ancre ($context . "&id=$code->id&do=delete", "Delete");
$tpl->set_var("CODIF_LABEL", $code->label);
$tpl->set_var("MODIFY", $modLink);
$tpl->set_var("DELETE", $delLink);
$tpl->parse("CODIFS", "DETAIL_CODIF", true);
}
$tpl->set_var("ADD_CODE", Ancre($context, "Add a new code"));
/* Instanciate CODIFS in BODY */
$tpl->parse("BODY", "TxtCodes");
}
function InsertCode ($nomCodif, $codif, $mode, $db)
{
// Controle
$message = ControleCodif ($codif);
if (!empty($message)) return $message;
// Insertion ou mise à jour
$code = SQLCodif ($nomCodif, $codif, $mode, $db);
return $code;
}
function FormCodif ($nomCodif, $codif, $mode, $target)
{
// Create the form
$form = new Formulaire ("POST", $target, false);
$form->champCache ("mode", $mode);
if ($mode != INSERTION)
{
$form->champCache ("id", $codif['id']);
}
else
$codif['label'] = "";
$form->champTexte ("Label",
"label", $codif['label'], 30, 30);
if ($mode == MAJ)
$form->champValider ("Modify", "submit");
else
$form->champValider ("Insert", "submit");
return $form->fin(false);
}
// Insérer une codification
function SQLCodif ($nomCodif, $codif, $mode, $db)
{
// Get the variables (easier)
$lib = $codif['label'];
if ($mode == INSERTION)
{
// Insert
$query = "INSERT INTO $nomCodif (label) "
. "VALUES ('$lib') ";
$db->execRequete ($query);
$code = $db->idDerniereLigne();
}
else
{
// Update
$code = $codif['id'];
$query = "UPDATE $nomCodif SET label='$lib' "
. " WHERE id='$code'";
$db->execRequete ($query);
}
return $code;
}
function ControleCodif($codif)
{
$message = "";
// Quelques tests...
if (empty ($codif['label'])) $message = "Please provide a label
";
return $message;
}
// Recherche d'une codif
function ChercheCodif ($nomCodif, $code, $db)
{
$query = "SELECT * FROM $nomCodif WHERE id = '$code'" ;
$result = $db->execRequete ($query);
return $db->ligneSuivante ($result);
}
// Recherche de l'intitulé d'une codif
function LibelleCodif ($nomCodif, $code, $db)
{
$query = "SELECT * FROM $nomCodif WHERE id = '$code'" ;
$result = $db->execRequete ($query);
$codif = $db->ligneSuivante ($result);
return $codif['label'];
}
?>
Erreur. Désolé, connexion au serveur localhost impossible
Erreur. Désolé, accès à la base cmc2004Review impossible
Erreur. MySQL proteste
Erreur. problème dans l'exécution de la requête : SELECT * FROM Config
Erreur. MySQL proteste :
Erreur. problème dans l'exécution de la requête : SELECT * FROM Session WHERE idSession = 'dsr847go3jrc6q9lqlt0fqa86rua20b4'
Erreur. MySQL proteste :