Bonjour à tous, je viens vers vous après avoir longuement chercher.
Voilà,
J'ai 2 tables, "device" et "model".
device contient l'id du model.
Lors de l'insertion du formulaire de device je cherche à faire un validateur qui compare un champ "serial" du formulaire et le "nom du model" de la base.
S'ils correspondent c'est bon sinon false.
J'ai fais cette requête pour l'appeler dans le validateur :
et la le code du validateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public function verification_serialmodel($iddevice) { $select = $this->select() ->setIntegrityCheck(false) ->from(array('device'), array('id','serial_number')) ->join(array('netasq_model'), 'device.netasq_model_id = netasq_model.id',array('name')) ->where('device.id = ?', $iddevice); return $this->fetchRow($select); }
Pourriez vous m'aider s'il vous plaît ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 class Application_Validate_VerificationSerialmodel extends Zend_Validate_Abstract { const MSG = 'verification_serialmodel'; protected $_messageTemplates = array( self::MSG => 'Le numero de serie ne correspond pas au modele' ); public function isValid($value, $context = null) { $device = new Application_Model_DbTable_Device(); $modelextract = str_replace("-","",$ar_data['name']); $modelserie = substr($ar_data['serial_number'], 0, -10); $device->verification_serialmodel($ar_data); if($modelextract == $modelserie) return true; $this->_error(self::MSG); return false; } }
Merci d'avance de votre aide.
Cordialement,
Partager