¿como puedo crear un buscador para 2 datatables?

encontré este código

var table1 = $  ('#table1').DataTable(); var table2= $  ('#table2').DataTable(); var table3= $  ('#table3').DataTable(); var table4= $  ('#table4').DataTable(); var table5= $  ('#table5').DataTable();  $  ("[aria-controls='DataTables_Table_0']").on( 'keyup', function () {     table1.search( this.value ).draw();     table2.search( this.value ).draw();     table3.search( this.value ).draw();     table4.search( this.value ).draw();     table5.search( this.value ).draw(); } ); 

lo que hace es que en el buscador de la tabla DataTables_Table_0 si escribo algo busca en las table1…..table5, si escribo algo en mi tabla principal busca en todas las demas tablas, lo e adaptado a las tablas que necesito pero no hace nada, ese codigo donde lo encontre si funciona pero a la hora de ponerlo en donde lo ocupo y adaptarlo no me funciona o tal vez no sea eso lo que ocupe.

Eliminar elemento al presionar una tecla

El código consiste es en crear un lobo con las flechas del teclado, ya hice un código más o menos funcional porque queda un loco detrás como si fuera una línea de lobo.

¿Cómo hago para quitar el lobo “viejo” por decirlo así? o sea, el lobo anterior al nuevo que se dibuja cuando presiono la tecla

mi código:

console.log("*script is working*");  var vp = document.getElementById("villaPlatzi");  var papel = vp.getContext("2d");  var flechas = {     UP: 38,     DOWN: 40,     LEFT: 37,     RIGHT: 39, };  document.addEventListener("keyup", moverLobo);  function moverLobo(evento) {   papel.drawImage(lobo.objeto, xLobo, yLobo);     var movimientoLobo = 10;    switch (evento.keyCode)    {     case flechas.UP:     yLobo = yLobo - movimientoLobo     break;      case flechas.DOWN:      yLobo = yLobo + movimientoLobo     break;      case flechas.LEFT:      xLobo = xLobo - movimientoLobo     break;      case flechas.RIGHT:      xLobo = xLobo + movimientoLobo     break;      default:     console.log("***************************************************************")     break;    } }  var xLobo = 150; var yLobo = 150;  var fondo = {   url: "tile.png",   loadState: false, };  fondo.objeto = new Image(); fondo.objeto.src = fondo.url; fondo.objeto.addEventListener("load", cargarFondo);  var vaca = {   url: "vaca.png",   loadState: false, };  vaca.objeto = new Image(); vaca.objeto.src = vaca.url; vaca.objeto.addEventListener("load", cargarVaca);  var pollo = {   url: "pollo.png",   loadState: false, };  pollo.objeto = new Image(); pollo.objeto.src = pollo.url; pollo.objeto.addEventListener("load", cargarPollo);  var cerdo = {   url: "cerdo.png",   loadState: false, };  cerdo.objeto = new Image(); cerdo.objeto.src = cerdo.url; cerdo.objeto.addEventListener("load", cargarCerdo);  var lobo = {    url: "lobo.png",    loadState: false, };  lobo.objeto = new Image(); lobo.objeto.src = lobo.url; lobo.objeto.addEventListener("load", cargarLobo)  function cargarFondo() {   fondo.loadState = true;   dibujar(); }  function cargarVaca() {   vaca.loadState = true;   dibujar(); }  function cargarCerdo() {   cerdo.loadState = true;   dibujar(); }  function cargarPollo() {   pollo.loadState = true;   dibujar(); }  function cargarLobo() {   lobo.loadState = true;   moverLobo(); }   function dibujar(evento) {   if (fondo.loadState == true)   {     papel.drawImage(fondo.objeto, 0, 0);   }   if (vaca.loadState == true)   {     var cantidad = aleatorio(5, 20);     console.log("Hay " + cantidad + "vacas!");     for(var v = 0; v < cantidad; v++)     {       var x = aleatorio(0, 420);       var y = aleatorio(0, 420);       papel.drawImage(vaca.objeto, x, y);     }    }   if (pollo.loadState == true)   {     var cantidad = aleatorio(5, 20);     console.log("Hay " + cantidad + "pollos!");      for(var p = 0; p < cantidad; p++)     {       var x = aleatorio(0, 420);       var y = aleatorio(0, 420);       papel.drawImage(pollo.objeto, x, y);      }    }   if (cerdo.loadState == true)   {     console.log("Hay " + cantidad + "cerdos!");      var cantidad = aleatorio(5, 20);     for(var c = 0; c < cantidad; c++)     {       var x = aleatorio(0, 420);       var y = aleatorio(0, 420);       papel.drawImage(cerdo.objeto, x, y);     }    }   if (lobo.loadState == true)   {     console.log("el lobo esta suelto :v");     papel.drawImage(lobo.objeto, xLobo, yLobo);   }   }  function aleatorio (min, max) {   var resulato;   resultado = Math.floor(Math.random() * (max - min + 1)) + min;   return resultado; } 

Error al guardar un input text

Al guardar un input-text en una base Mysql, no me deja. Al tocar en submit me tira el siguiente error

TypeError: Cannot read property ‘inputemail’ of undefined at routes.post (C:\Users\Piter\Desktop\Goven\server\routes\routes.js:11:31) at Layer.handle [as handle_request] (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\layer.js:95:5) at next (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\route.js:137:13) at Route.dispatch (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\route.js:112:3) at Layer.handle [as handle_request] (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\layer.js:95:5) at C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\index.js:281:22 at Function.process_params (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\index.js:335:12) at next (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\index.js:275:10) at Function.handle (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\index.js:174:3) at router (C:\Users\Piter\Desktop\Goven\node_modules\express\lib\router\index.js:47:12)

Este es mi código HTML:

<div id="screen">             <form action="/contact" method="post">                 <h5>Email</h5>                 <input type="text" id="inputemail" name="inputemail" >                 <h5>Comentario</h5>                 <textarea id="areacoment" name="areacoment"></textarea>                 <button type="submit" id="btnsubmit">Enviar</button>             </form>        </div> 

Este mi routes:

const express = require("express"); const routes = express.Router(); const pool= require("../mysql/mysql"); const mysql=require("../mysql/mysql");   routes.post("/contact",(req,res)=>{     var inputemail = req.body.inputemail;     pool.query("INSERT INTO contact (email, info) VALUES (?, ?)", [inputemail, inputcoment],         function (error, results, fields) {             if (error) { throw error }             if (results) { console.log(results); }         }     );     res.render("index.html"); });  module.exports=routes; 

Comparar que una fechas en formato timestamptz, PostgreSQL, Sequelize

Estoy teniendo problemas al comparar dos fechas en timestamptz, tengo una tabla con un campo fecha de expiración y necesesito comparar, que una fecha no sea mayor a la de expiración que esta en la tabla, estoy usando Sequelize

let ahora = new Date(); function verificar (id, ahora) {  return modelo.findOne({   where: {     id   },   fecha_exp: {     [Op.gte]: ahora   }  }); } 

Les agradeceria su colaboración

¿como cambiar estilos en google charts?

buenas tengo mi grafica asi

introducir la descripción de la imagen aquí

el problema que tengo es que me muestra los porcentajes todos encimados, hay algo para que no los muestre asi? intente hacer las barras mas anchas pero no, intente hacer la grafica mas ancha pero ya no se puede mas

estas son las opciones que tengo

var classicOptions = {           width: '1800px',           height: '900px',             title: 'Porcentaje por mes',            bar: { groupWidth: "90%" },            series: {              1: {targetAxisIndex: 1}           }          }; 

codeigniter form base_url no me encuentra la ruta

<form id="idlogin"  action="<?= base_url('login/ingresar'); ?>" method="post" role="form" > 

login es un cotrolador class Login extends CI_Controller que tiene una funcion ingresar

.... 

function ingresar(){

    print_r($  _POST);      $  usuario = $  this->input->post("user_login");     $  passw = $  this->input->post("pass_login"); 

El tema cuando envió la información me fijo en depurador y el post se hace pero busca la ruta http://localhost/Myaplicacion/Login/ingresar y no http://localhost/Myaplicacion/aplication/controllers/Login/ingresar

osea no va al controlador . aque se debe si tengo bien la base_url

Parametrizar construcción de Datatable en SgDatatableBundle

Estoy intentando parametrizar la construcción de un datatable del bundle SgDatatable y necesito pasar por el constructor el nombre de la tabla y la entidad, pero el datatable es instanciado por el servicio sg_datatables.factory que no me permite pasar estos parámetros al constructor de la clase. He intentado extender la clase Datatable para pasar los parámetros necesarios (nombre de tabla y entity) por el constructor pero no sé como pasarlos al servicio factory para que este lo pase al constructor de la clase Datatable. Agradecería cualquier ayuda al respecto.

Muchas gracias.