Souhaite comprendre un code

LATIFNignan Messages postés 6 Statut Membre -  
LATIFNignan Messages postés 6 Statut Membre -
bonsoir comment allez vous? s'il vous plait je souhaiterais comprendre un bout de code, je voudrais donc solliciter de votre aide. je les trouver dans le main.php de mkframework
$iId=_root::getParam('id',null);
		if($iId==null){
			$oSoinlivrer=new row_soinlivrer;	
		}else{
			$oSoinlivrer=model_soinlivrer::getInstance()->findById( _root::getParam('id',null) );
		}
		
		
		
		
		$tColumn=array('matricule_p','matricule_d','id_ass','id_serv','date_serv','heure_serv','gratuit','assurer','num_bon','taux_prise_c');
		foreach($tColumn as $sColumn){
			$oSoinlivrer->$sColumn=_root::getParam($sColumn,null) ;
		}



Et voici la fonction entiére

private function processSave(){
	
		if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
			return null;
		}
		
		$oPluginXsrf=new plugin_xsrf();
		if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
			return array('token'=>$oPluginXsrf->getMessage() );
		}
	
		$iId=_root::getParam('id',null);
		if($iId==null){
			$oSoinlivrer=new row_soinlivrer;	
		}else{
			$oSoinlivrer=model_soinlivrer::getInstance()->findById( _root::getParam('id',null) );
		}
		
		
		
		
		$tColumn=array('matricule_p','matricule_d','id_ass','id_serv','date_serv','heure_serv','gratuit','assurer','num_bon','taux_prise_c');
		foreach($tColumn as $sColumn){
			$oSoinlivrer->$sColumn=_root::getParam($sColumn,null) ;
		}
		
		
		if($oSoinlivrer->save()){
			//une fois enregistre on redirige (vers la page liste)
			_root::redirect('programmer::list');
		}else{
			return $oSoinlivrer->getListError();
		}
		
	}
A voir également:

2 réponses

jordane45 Messages postés 40050 Date d'inscription   Statut Modérateur Dernière intervention   4 759
 
Bonjour,

Quelle partie ne comprends tu pas au juste ?
Par exemple pour :
$iId=_root::getParam('id',null);

Il suffit de lire la doc : http://mkframework.com/security.html

Pour
::getInstance()->findById(

http://mkframework.com/bigtutoriel_socialnetwork_V.html
http://mkframework.com/orm.html#sesrequetes
0
LATIFNignan Messages postés 6 Statut Membre 1
 
Bonsoir ! merci Jordane45 pour votre réponse. au juste ce que je comprend pas, c'est comment on récupère exactement les champs saisis dans les variables et comment les a on enregistrés. je voudrais comprendre la procédure afin de pouvoir modifier le code et insérer un code pour vérifier l’existence d'une occurrence. a ce propos,je vous explique un peu mon souci. au niveau de cette fonction j'enregistre des programmation de soins. j'aimerais pouvoir vérifier lorsque je tente d'enregistrer une autre programmation s'il n'existe pas une programmation du même médecin, à la date et à l'heure entré. veuillez si possible m'aider en me proposant un code enserrer dans cette fonction qui pourra m'aider.
0
LATIFNignan Messages postés 6 Statut Membre 1
 
voici le code que j'essai depuis mais en vin
private function processSave(){
	
		if(!_root::getRequest()->isPost() ){ //si ce n'est pas une requete POST on ne soumet pas
			return null;
		}
		
		$oPluginXsrf=new plugin_xsrf();
		if(!$oPluginXsrf->checkToken( _root::getParam('token') ) ){ //on verifie que le token est valide
			return array('token'=>$oPluginXsrf->getMessage() );
		}
	
		$iId=_root::getParam('id',null);
		if($iId==null){
			$oSoinlivrer=new row_soinlivrer;	
		}else{
			$oSoinlivrer=model_soinlivrer::getInstance()->findById( _root::getParam('id',null) );
		}
		
		
		
		$tColumn=array('matricule_p','matricule_d','id_ass','id_serv','date_serv','heure_serv','gratuit','assurer','num_bon','taux_prise_c');
		$mat=$tColumn->matricule_d;
		$dat=$tColumn->date_serv;
		$heur=$tColumn->heure_serv;
		
		$MyDate = explode('-',$dat);
		$MyHeur = explode(':',$heur);
		
		$nb=mysql_query("SELECT COUNT (*) FROM soinlivrer WHERE matricule_d='".$mat."' AND date_serv='".$MyDate[0].'-'.$MyDate[1].'-'.$MyDate[2]."' AND heure_serv='".$MyHeur[0].':'.$MyHeur[1].':'.$MyHeur[2]."' ");
		$nbs = $nb->fetch();
		if($nbs > 0)
		{
		return null;
		} 
		else{
		
		foreach($tColumn as $sColumn){
			$oSoinlivrer->$sColumn=_root::getParam($sColumn,null) ;
		}
		
		
		if($oSoinlivrer->save()){
			//une fois enregistre on redirige (vers la page liste)
			_root::redirect('programmer::list');
		}else{
			return $oSoinlivrer->getListError();
		}
		}
		
	}
0
LATIFNignan Messages postés 6 Statut Membre 1
 
voici le message d'erreur
0