ok mira ya lo hize y esto es lo que me arrojo solo que la instruccion es return debug($contenedore); y como puedes ver si es navieras id y es igual a 1pero no me funciona
object(App\Model\Entity\Contenedore) { 'clave' => 'ADEC2334343', 'tamaño' => '20DC', 'status' => 'lleno', 'navieras_id' => (int) 1, 'shipment' => '233434343', 'operacion' => 'Importacion', 'fecha_est_arribo' => object(Cake\I18n\FrozenTime) { 'time' => '2017-11-27T15:50:00+00:00', 'timezone' => 'UTC', 'fixedNowTime' => false }, El 27 de noviembre de 2017, 9:35, Abraham Zenteno Sánchez < abzent...@gmail.com> escribió: > Al hacer clic en el boton submit todos los datos de formulario se envian > por POST si quieres visualizar que es lo que estas recibiendo por POST, > cuando realizas la siguiente instrucción: > > $contenedore = $this->Contenedores->patchEntity($contenedore, > $this->request->getData()); > debug($contenedore); //esta instrucción imprimirá todas las variables y > contenidos en formato de array para que puedas visualizar cual es el nombre > de tu variable a utilizar en el case, si no funciona debug prueba con > print_r($contenedore) > > El 27 de noviembre de 2017, 07:57, Misael Morin<xxxroyxxxmustangxxx@ > gmail.com> escribió: > >> hola que tal pues supongo yo que es así como se llama la variable ya que >> el dato que se inserta es navieras_id y va. a la base de datos y si no es >> el caso como podría yo ver la variable del dato ???? y de igual manera >> nuevamente muchas gracias por tu ayuda =) >> >> El viernes, 24 de noviembre de 2017, 11:58:50 (UTC-6), kraxbox escribió: >>> >>> Debes reemplazar 'navieras_id' por la variable que viene por post o >>> data, del select que está en tu formulario y se envía por post o data. >>> >>> 'navieras_id' solo es un ejemplo de lo que debes poner ahí. >>> >>> El 24 nov. 2017 10:45 AM, "Misael Morin" <xxxroyxxx...@gmail.com> >>> escribió: >>> >>>> hola que tal gracias por ayudarme pero con el switch en el controlador >>>> me marca error con la palabra case si lo hago con if no me funciona bien no >>>> me marca error pero ignora la condición y la banca se va directo al else >>>> esto es lo que tengo con if else >>>> public function add() >>>> { >>>> $contenedore = $this->Contenedores->newEntity(); >>>> >>>> if ($this->request->is('post')) { >>>> $contenedore = $this->Contenedores->patchEntity($contenedore, >>>> $this->request->getData()); >>>> if ('navieras_id') { >>>> if ($this->Contenedores->save($contenedore)) >>>> { >>>> >>>> $this->Flash->success(__('The contenedore has been >>>> saved.')); >>>> >>>> if('navieras-id' ==1){ >>>> $this->redirect(['controller'=>'Complementos', >>>> 'action' => 'add']); //crea la vista uno que obviamente es un action dentro >>>> del controlador >>>> } >>>> else >>>> { >>>> $this->redirect(['controller' => >>>> 'controlador','action' => 'acccion_navieras_2']); //crea la vista dos que >>>> obviamente es un action dentro del controlador >>>> } >>>> //return $this->redirect(['controller'=>'Complementos', >>>> 'action' => 'add']); >>>> } >>>> $this->Flash->error(__('The contenedore could not be saved. >>>> Please, try again.')); >>>> >>>> }} >>>> $navieras = $this->Contenedores->Navieras->find('list', >>>> ['keyField' => 'id','valueField'=>'razon_social']); >>>> $this->set(compact('contenedore', 'navieras')); >>>> $this->set('_serialize', ['contenedore']); >>>> >>>> } >>>> >>>> y esto es lo que tu me habías propuesto: >>>> >>>> public function add() >>>> { >>>> $contenedore = $this->Contenedores->newEntity(); >>>> >>>> if ($this->request->is('post')) { >>>> $contenedore = $this->Contenedores->patchEntity($contenedore, >>>> $this->request->getData()); >>>> if ('navieras_id') { >>>> if ($this->Contenedores->save($contenedore)) >>>> { >>>> >>>> $this->Flash->success(__('The contenedore has been >>>> saved.')); >>>> swicth($navieras) >>>> { >>>> case 0: >>>> $this->redirect(['controller'=>'Complementos', >>>> 'action' => 'add']); //crea la vista uno que obviamente es un action dentro >>>> del controlador >>>> break; >>>> case 1: >>>> $this->redirect(['controller' => >>>> 'controlador','action' => 'acccion_navieras_2']); //crea la vista dos que >>>> obviamente es un action dentro del controlador >>>> break; >>>> //return $this->redirect(['controller'=>'Complementos', >>>> 'action' => 'add']); } >>>> $this->Flash->error(__('The contenedore could not be saved. >>>> Please, try again.')); >>>> >>>> }} >>>> $navieras = $this->Contenedores->Navieras->find('list', >>>> ['keyField' => 'id','valueField'=>'razon_social']); >>>> $this->set(compact('contenedore', 'navieras')); >>>> $this->set('_serialize', ['contenedore']); >>>> >>>> } >>>> >>>> >>>> y este es el error que me arroja >>>> >>>> syntax error, unexpected 'case' (T_CASE) >>>> de igual manera gracias nuevamente >>>> >>>> El jueves, 23 de noviembre de 2017, 12:14:52 (UTC-6), kraxbox escribió: >>>>> >>>>> si lo que quieres es que después de hacer save re direcciones a una >>>>> vista determinada dependiendo de la selección en Navieras con el switch y >>>>> redirect es suficiente >>>>> >>>>> //este código debe ir después del save dentro del controlador en el >>>>> action add, olvida Jquery >>>>> >>>>> swicth(opcion_navieras){ >>>>> case 0: >>>>> $this->redirect(['controller' => 'controlador','action' => >>>>> 'acccion_navieras_1']); //crea la vista uno que obviamente es un action >>>>> dentro del controlador >>>>> break; >>>>> case 0: >>>>> $this->redirect(['controller' => 'controlador','action' => >>>>> 'acccion_navieras_2']); //crea la vista dos que obviamente es un action >>>>> dentro del controlador >>>>> break; >>>>> } >>>>> >>>>> El jueves, 23 de noviembre de 2017, 11:59:00 (UTC-6), Misael Morin >>>>> escribió: >>>>>> >>>>>> >>>>>>>> mas bien seria que depende la seccion de navieras el controlador >>>>>>>> envie a una vista o a otra pero no se como hacer eso seria de igual >>>>>>>> manera >>>>>>>> con jquery o como de igual manera gracias por tu pronta respuesta >>>>>>>> >>>>>>> >>>>>> El jueves, 23 de noviembre de 2017, 11:42:55 (UTC-6), kraxbox >>>>>> escribió: >>>>>>> >>>>>>> Haber si entiendo bien, dependiendo de la selección de Navieras el >>>>>>> form se redirija a diferentes acciones en el Controlador, lo que yo >>>>>>> haría >>>>>>> es cambiar la propiedad del action del Form, y esto como se cambia: con >>>>>>> jquery facil >>>>>>> >>>>>>> $("#id_select").change(function(){ >>>>>>> switch($("#id_select").val()){ >>>>>>> case 0: >>>>>>> $('#formId').attr('action', '/controlador/accion1'); >>>>>>> break; >>>>>>> case 1: >>>>>>> $('#formId').attr('action', '/controlador/accion2' >>>>>>> ); >>>>>>> break; >>>>>>> } >>>>>>> }); >>>>>>> >>>>>>> Espero te sirva >>>>>>> El jueves, 23 de noviembre de 2017, 10:32:44 (UTC-6), Misael Morin >>>>>>> escribió: >>>>>>>> >>>>>>>> >>>>>>>> <https://lh3.googleusercontent.com/-2uZBoCfipJc/Whb3K2Ume1I/AAAAAAAALr8/hm-CHVWA2xQUpZn0RZuKAFaFkUxfOS89QCLcBGAs/s1600/Captura%2Bde%2Bpantalla%2B2017-11-23%2B10.26.08.png> >>>>>>>> Hola que tal en una vista tengo una lista desplegable que muestro >>>>>>>> datos desde otra tabla lo que quiero hacer es que si de esos datos que >>>>>>>> muestro hapag o maersk que si selecciono 1 haga una accion en el >>>>>>>> contolador >>>>>>>> y si selecciono el otro haga una accion diferente >>>>>>>> >>>>>>>> este es mi controlador para esta vista pero no se como lo podria >>>>>>>> hacer si con un if o con que si alguein me pudiera ayudar se lo >>>>>>>> agradeceria >>>>>>>> mucho >>>>>>>> >>>>>>>> >>>>>>>> <https://lh3.googleusercontent.com/-MopkKKEtMao/Whb33xnFcGI/AAAAAAAALsE/egH6O62n94Ik6Pn5htSqxhVcPjF-LjoiQCLcBGAs/s1600/Captura%2Bde%2Bpantalla%2B2017-11-23%2B10.25.43.png> >>>>>>>> >>>>>>>> -- >>>> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" >>>> de Grupos de Google. >>>> Para cancelar la suscripción a este grupo y dejar de recibir sus >>>> mensajes, envía un correo electrónico a cakephp-es+...@googlegroups.com >>>> . >>>> Para publicar en este grupo, envía un correo electrónico a >>>> cakep...@googlegroups.com. >>>> Visita este grupo en https://groups.google.com/group/cakephp-es. >>>> Para acceder a más opciones, visita https://groups.google.com/d/optout. >>>> >>> -- >> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de >> Grupos de Google. >> Para cancelar la suscripción a este grupo y dejar de recibir sus >> mensajes, envía un correo electrónico a cakephp-es+unsubscribe@googleg >> roups.com. >> Para publicar en este grupo, envía un correo electrónico a >> cakephp-es@googlegroups.com. >> Visita este grupo en https://groups.google.com/group/cakephp-es. >> Para acceder a más opciones, visita https://groups.google.com/d/optout. >> > > > > -- > ISC Abraham Zenteno Sánchez > Tel (222) 144 53 70 > Cel: 2225245575 > > Facebook /abzenteno > Twitter @abzenteno > > -- > Has recibido este mensaje porque estás suscrito a un tema del grupo > "CakePHP-es" de Grupos de Google. > Para cancelar la suscripción a este tema, visita > https://groups.google.com/d/topic/cakephp-es/E8Q2jtNclNQ/unsubscribe. > Para cancelar la suscripción a este grupo y a todos sus temas, envía un > correo electrónico a cakephp-es+unsubscr...@googlegroups.com. > Para publicar en este grupo, envía un correo electrónico a > cakephp-es@googlegroups.com. > Visita este grupo en https://groups.google.com/group/cakephp-es. > Para acceder a más opciones, visita https://groups.google.com/d/optout. > -- Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos de Google. Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cakephp-es+unsubscr...@googlegroups.com. Para publicar una entrada en este grupo, envía un correo electrónico a cakephp-es@googlegroups.com. Visita este grupo en https://groups.google.com/group/cakephp-es. Para obtener más opciones, visita https://groups.google.com/d/optout.