当前位置: 首页>>代码示例>>PHP>>正文


PHP EntityManager::getInsertId方法代码示例

本文整理汇总了PHP中EntityManager::getInsertId方法的典型用法代码示例。如果您正苦于以下问题:PHP EntityManager::getInsertId方法的具体用法?PHP EntityManager::getInsertId怎么用?PHP EntityManager::getInsertId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在EntityManager的用法示例。


在下文中一共展示了EntityManager::getInsertId方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: create

 /**
  * Asigno permiso al usuario-proyecto-app
  * 
  * Y además creo el usuario en el cpanel del proyecto.
  * 
  * @return boolean
  */
 public function create()
 {
     $id = parent::create();
     if ($id) {
         // Para saber el perfil que tiene el usuario con la empresa.
         $usuario = new PcaeUsuarios($this->IdUsuario);
         $perfil = $usuario->getPerfilEmpresa($this->IdEmpresa);
         $idPerfil = $perfil->getId();
         unset($usuario);
         unset($perfil);
         $proyectoApp = new PcaeProyectosApps();
         $filtro = "IdProyecto='{$this->IdProyecto}' AND IdApp='{$this->IdApp}'";
         $rows = $proyectoApp->cargaCondicion("*", $filtro);
         unset($proyectoApp);
         $row = $rows[0];
         if ($row['Id']) {
             $connection = array('dbEngine' => $row['DbEngine'], 'host' => $row['Host'], 'user' => $row['User'], 'password' => $row['Password'], 'dataBase' => $row['Database']);
             $em = new EntityManager($connection);
             if ($em->getDbLink()) {
                 $query = "select Id from {$connection['dataBase']}.CpanUsuarios where IdUsuario='{$this->IdUsuario}'";
                 $em->query($query);
                 $rows = $em->fetchResult();
                 $id = $rows[0]['Id'];
                 if ($id) {
                     $query = "update {$connection['dataBase']}.CpanUsuarios set IdPerfil='{$idPerfil}' where Id='{$id}'";
                     $em->query($query);
                 } else {
                     $query = "insert into {$connection['dataBase']}.CpanUsuarios (IdUsuario,IdPerfil,IdRol,IdTipoUsuario) values ('{$this->IdUsuario}','{$idPerfil}','1','1');";
                     $em->query($query);
                     $lastId = $em->getInsertId();
                     $query = "update {$connection['dataBase']}.CpanUsuarios set SortOrder='{$lastId}', PrimaryKeyMD5='" . md5($lastId) . "' WHERE Id='{$lastId}'";
                     $em->query($query);
                 }
                 $em->desConecta();
             }
             unset($em);
         }
     }
     return $id;
 }
开发者ID:albatronic,项目名称:hermes,代码行数:47,代码来源:PcaePermisos.class.php

示例2: newAction

 /**
  * Crea un registro nuevo
  *
  * Si viene por GET muestra un template vacio
  * Si viene por POST crea un registro
  *
  * @return array con el template y valores a renderizar
  */
 public function newAction()
 {
     if ($this->values['permisos']['permisosModulo']['IN']) {
         switch ($this->request["METHOD"]) {
             case 'GET':
                 //MOSTRAR FORMULARIO VACIO
                 //SI EN LA POSICION 2 DEL REQUEST VIENE ALGO,
                 //SE ENTIENDE QUE ES EL VALOR DE LA CLAVE PARA LINKAR CON LA ENTIDAD PADRE
                 //ESTO SE UTILIZA PARA LOS FORMULARIOS PADRE->HIJO
                 if ($this->request['2'] != '') {
                     $this->values['linkBy']['value'] = $this->request['2'];
                 }
                 $datos = new $this->entity();
                 $datos->setDefaultValues((array) $this->varEnvMod['columns']);
                 $this->values['datos'] = $datos;
                 $this->values['errores'] = array();
                 $template = $this->entity . '/new.html.twig';
                 break;
             case 'POST':
                 //CREAR NUEVO REGISTRO
                 //COGER EL LINK A LA ENTIDAD PADRE
                 if ($this->values['linkBy']['id'] != '') {
                     $this->values['linkBy']['value'] = $this->request[$this->entity][$this->values['linkBy']['id']];
                 }
                 $datos = new $this->entity();
                 $datos->bind($this->request[$this->entity]);
                 $rules = $this->form->getRules();
                 $rules['GLOBALES']['numMaxPages'] = $this->varEnvPro['numMaxPages'];
                 $rules['GLOBALES']['numMaxRecords'] = $this->varEnvMod['numMaxRecords'];
                 if ($datos->valida($rules)) {
                     $em = new EntityManager($datos->getConectionName());
                     if ($em->getDbLink()) {
                         $v = $this->request[$this->entity];
                         $columnas = "`IDAgente`,`IDRol`,`IDPerfil`,`IDSucursal`,`IDAlmacen`,`Activo`,`PrimaryKeyMD5`";
                         $valores = "'{$v['IDAgente']}','{$v['IDRol']}','{$v['IDPerfil']}','{$v['IDSucursal']}','{$v['IDAlmacen']}','{$v['Activo']}','" . md5($v['IDAgente']) . "'";
                         $query = "insert into {$datos->getDataBaseName()}.{$datos->getTableName()} ({$columnas}) VALUES ({$valores})";
                         $em->query($query);
                         $lastId = $em->getInsertId();
                         $em->desConecta();
                     }
                     $lastId = $this->request[$this->entity]['IDAgente'];
                     $this->values['errores'] = $datos->getErrores();
                     $this->values['alertas'] = $datos->getAlertas();
                     //Recargo el objeto para refrescar las propiedades que
                     //hayan podido ser objeto de algun calculo durante el proceso
                     //de guardado y pongo valores por defecto (urlamigable, etc)
                     if ($lastId and $datos->getUrlTarget() == '') {
                         $datos = new $this->entity($lastId);
                         $this->gestionUrlMeta($datos);
                         $this->values['errores'] = $datos->getErrores();
                         $this->values['alertas'] = $datos->getAlertas();
                     }
                     // Si ex buscable, actualizar la tabla de búsquedas
                     if ($lastId and $this->varEnvMod['searchable'] == '1') {
                         $this->ActualizaBusquedas($datos);
                     }
                     $this->values['datos'] = $datos;
                     $template = $this->values['errores'] ? $this->entity . '/edit.html.twig' : $this->entity . '/edit.html.twig';
                 } else {
                     $this->values['datos'] = $datos;
                     $this->values['errores'] = $datos->getErrores();
                     $this->values['alertas'] = $datos->getAlertas();
                     $template = $this->entity . '/new.html.twig';
                 }
                 break;
         }
     } else {
         $template = '_global/forbiden.html.twig';
     }
     return array('template' => $template, 'values' => $this->values);
 }
开发者ID:albatronic,项目名称:hermes,代码行数:79,代码来源:AgentesController.class.php


注:本文中的EntityManager::getInsertId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。