97 |
} else { // Si mode modification ou suppression |
} else { // Si mode modification ou suppression |
98 |
// Clause where en fonction du type de la cle primaire |
// Clause where en fonction du type de la cle primaire |
99 |
if ($this->typeCle == "A") { |
if ($this->typeCle == "A") { |
100 |
$sql .= " where ".$this->clePrimaire." like '".$id."' "; |
$sql .= " where ".$this->table.".".$this->clePrimaire." like '".$id."' "; |
101 |
} else { |
} else { |
102 |
$sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." "; |
$sql .= " where ".$this->table.".".$this->clePrimaire." = ".$id." "; |
103 |
} |
} |
151 |
} |
} |
152 |
} |
} |
153 |
} |
} |
|
if(!$this->canAccess()) { |
|
|
// |
|
|
$message_class = "error"; |
|
|
$message = _("Droits insuffisants. Vous n'avez pas suffisament de ". |
|
|
"droits pour acceder a cette page."); |
|
|
$this->f->addToMessage($message_class, $message); |
|
|
|
|
|
// |
|
|
$this->f->setFlag(NULL); |
|
|
$this->f->display(); |
|
|
|
|
|
// Arrêt du script |
|
|
die(); |
|
|
} |
|
154 |
} |
} |
155 |
|
|
156 |
|
|
198 |
// Log |
// Log |
199 |
$this->addToLog(_("Requete executee"), VERBOSE_MODE); |
$this->addToLog(_("Requete executee"), VERBOSE_MODE); |
200 |
// Log |
// Log |
|
if(isset($val[$this->clePrimaire])) // *** |
|
|
$id = $val[$this->clePrimaire]; |
|
|
else |
|
|
$id=$this->id; |
|
201 |
$message = _("Enregistrement")." ".$this->valF[$this->clePrimaire]." "; |
$message = _("Enregistrement")." ".$this->valF[$this->clePrimaire]." "; |
202 |
$message .= _("de la table")." \"".$this->table."\" "; |
$message .= _("de la table")." \"".$this->table."\" "; |
203 |
$message .= "[ ".$db->affectedRows()." "; |
$message .= "[ ".$db->affectedRows()." "; |
393 |
$this->addToLog("supprimer() - end", EXTRA_VERBOSE_MODE); |
$this->addToLog("supprimer() - end", EXTRA_VERBOSE_MODE); |
394 |
} |
} |
395 |
|
|
|
|
|
|
|
|
396 |
/** |
/** |
397 |
* Methode de verification de l'unicite d'une valeur pour chaque elements du tableau unique_key, |
* Methode de verification de l'unicite d'une valeur pour chaque elements du tableau unique_key, |
398 |
* ainsi que l'unicite de la cle multiple unique_multiple_key. |
* ainsi que l'unicite de la cle multiple unique_multiple_key. |
451 |
* @param string $value valeur à inserer dans la colonne |
* @param string $value valeur à inserer dans la colonne |
452 |
*/ |
*/ |
453 |
function isUnique($champ,$value) { |
function isUnique($champ,$value) { |
454 |
//Test sur un groupe de champs |
//Test sur un groupe de champs |
455 |
if(is_array($champ) and is_array($value)) { |
if(is_array($champ) and is_array($value)) { |
456 |
$sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".implode(" = ? AND ",$champ)." = ?"; |
$sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".implode(" = ? AND ",$champ)." = ?"; |
457 |
} else { |
} else { |
458 |
//Test sur un champ |
//Test sur un champ |
459 |
$sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".$champ." = ?"; |
$sql = 'SELECT count(*) FROM '.DB_PREFIXE.$this->table." WHERE ".$champ." = ?"; |
460 |
} |
} |
461 |
if($this->getParameter('maj')) { |
if($this->getParameter('maj')) { |
583 |
if ($this->msg != "") { |
if ($this->msg != "") { |
584 |
|
|
585 |
// |
// |
|
$m = new message(); |
|
|
|
|
|
// |
|
586 |
if ($this->correct) { |
if ($this->correct) { |
587 |
$class = "valid"; |
$class = "valid"; |
588 |
} else { |
} else { |
589 |
$class = "error"; |
$class = "error"; |
590 |
} |
} |
591 |
$m->displayMessage($class, $this->msg); |
$this->f->displayMessage($class, $this->msg); |
592 |
|
|
593 |
} |
} |
594 |
|
|
636 |
} |
} |
637 |
} |
} |
638 |
|
|
639 |
|
/** |
640 |
|
* Méthode pour convertir une date Y-m-d en d/m/Y |
641 |
|
*/ |
642 |
|
function dateDBToForm($date) { |
643 |
|
$date = new DateTime($this->valF['date_demande']); |
644 |
|
return $date->format('d/m/Y'); |
645 |
|
} |
646 |
|
|
647 |
|
|
648 |
|
function init_select(&$form = null, &$db = null, $maj, $debug, $field, $sql, |
649 |
|
$sql_by_id, $om_validite = false) { |
650 |
|
|
651 |
|
if ($maj < 2) { |
652 |
|
|
653 |
|
$contenu = array(); |
654 |
|
$res = $db->query($sql); |
655 |
|
|
656 |
|
// logger |
657 |
|
$this->addToLog("setSelect()[gen/obj]: db->query(\"".$sql."\");", |
658 |
|
VERBOSE_MODE); |
659 |
|
|
660 |
|
// verification d'une eventuelle erreur |
661 |
|
if (database::isError($res)) { |
662 |
|
die($res->getMessage().$sql); |
663 |
|
} else { |
664 |
|
|
665 |
|
if ($debug == 1) { |
666 |
|
echo ' la requete '.$sql.' est executee'; |
667 |
|
echo "<br />"; |
668 |
|
} |
669 |
|
|
670 |
|
$contenu[0][0] = ''; |
671 |
|
$contenu[1][0] = _('choisir')." "._($field); |
672 |
|
|
673 |
|
$k=1; |
674 |
|
while($row =& $res->fetchRow()){ |
675 |
|
$contenu[0][$k] = $row[0]; |
676 |
|
$contenu[1][$k] = $row[1]; |
677 |
|
$k++; |
678 |
|
} |
679 |
|
|
680 |
|
// gestion des objets a date de validite |
681 |
|
if ($om_validite == true) { |
682 |
|
|
683 |
|
// ajout de la valeur manquante a $contenu si necessaire |
684 |
|
if ($maj == 1) { |
685 |
|
|
686 |
|
if (!in_array($this->form->val[$field], $contenu[0])) { |
687 |
|
|
688 |
|
// |
689 |
|
$this->getSelectOldValue($form, $maj, $db, $contenu, |
690 |
|
$sql_by_id, $field); |
691 |
|
} else { |
692 |
|
|
693 |
|
$empty = true; |
694 |
|
foreach ($this->form->val as $f => $value) { |
695 |
|
if (!empty($value)) { |
696 |
|
$empty = false; |
697 |
|
} |
698 |
|
} |
699 |
|
|
700 |
|
// |
701 |
|
if ($empty == true and |
702 |
|
$_POST[$field] != '') { |
703 |
|
|
704 |
|
$this->getSelectOldValue($form, $maj, $db, |
705 |
|
$contenu, $sql_by_id, |
706 |
|
$field, |
707 |
|
$_POST[$field]); |
708 |
|
} |
709 |
|
} |
710 |
|
} |
711 |
|
} |
712 |
|
|
713 |
|
$form->setSelect($field, $contenu); |
714 |
|
} |
715 |
|
} |
716 |
|
|
717 |
|
if ($maj == 2 or $maj == 3) { |
718 |
|
|
719 |
|
$contenu[0][0] = ''; |
720 |
|
$contenu[1][0] = ''; |
721 |
|
|
722 |
|
if (isset($this->form->val[$field]) and |
723 |
|
!empty($this->form->val[$field]) and $sql_by_id) { |
724 |
|
|
725 |
|
// ajout de l'identifiant recherche a la requete |
726 |
|
$sql_by_id = str_replace('<idx>', $this->form->val[$field], |
727 |
|
$sql_by_id); |
728 |
|
|
729 |
|
// execution |
730 |
|
$result = $db->query($sql_by_id); |
731 |
|
|
732 |
|
// logger |
733 |
|
$this->addToLog("setSelect()[gen/obj]: db->query(".$sql_by_id.");", |
734 |
|
VERBOSE_MODE); |
735 |
|
|
736 |
|
if (database::isError($result)) { |
737 |
|
die($result->getMessage().$sql_by_id); |
738 |
|
} |
739 |
|
|
740 |
|
$row =& $result->fetchRow(); |
741 |
|
$contenu[0][0] = $row[0]; |
742 |
|
$contenu[1][0] = $row[1]; |
743 |
|
|
744 |
|
$k=1; |
745 |
|
while($row =& $result->fetchRow()){ |
746 |
|
$contenu[0][$k] = $row[0]; |
747 |
|
$contenu[1][$k] = $row[1]; |
748 |
|
$k++; |
749 |
|
} |
750 |
|
} |
751 |
|
|
752 |
|
$form->setSelect($field, $contenu); |
753 |
|
} |
754 |
|
} |
755 |
} |
} |
756 |
|
|
757 |
?> |
?> |