Funcion JavaScript

Necesito un poco de ayuda, resulta que tengo una funcion que realiza una validacion de la hora actual + 50 minutos para cambiar un estado, si se ha pasado de la hora actual mas los 50 minutos da un error y no deja continuar. Ahora el problema viene que si quiero guardar un registro con una fecha futura se tiene que poder guardar sin hacer la validacion de la hora, eso es para los registros de la fecha actual, en la funcion que adjunto, pues tal cual valida los 50 minutos pero si cambio la fecha a futuro no deja validar el registro. He hecho algunas pruebas pero si lo guardo a futuro no me valida la fecha actual + los 50 minutos para los registros de hoy. A ver si alguien puede echarme una manita. Gracias!

function esFechaHoraAnterior50Min(fecha1, fecha2) {     if (!fecha1 == "" && !fecha2 == "") {         var splitFecha1 = fecha1.split('/');         var splitFecha2 = fecha2.split('/');         var fechaActual = new Date(splitFecha1[2].split(' ')[0], parseInt(splitFecha1[1])-1,splitFecha1[0], new Date(fecha1).getHours(), new Date(fecha1).getMinutes());         var fechaInicio = new Date(splitFecha2[2].split(' ')[0], parseInt(splitFecha2[1])-1,splitFecha2[0], new Date(fecha2).getHours(), new Date(fecha2).getMinutes());         var fechaFin = new Date(fechaInicio.getFullYear(), fechaInicio.getMonth(), fechaInicio.getDate(), fechaInicio.getHours(),fechaInicio.getMinutes());         fechaFin.setMinutes(fechaInicio.getMinutes() + 50);         alert(fechaActual + ">=" + fechaInicio +" && "+ fechaActual + "<=" + fechaFin );         if (fechaActual <= fechaInicio && fechaActual <= fechaFin) {             alert("paso por true");             return true;         } else{              return false;         }     } else {         return true;     } } 

Hola como usar esta funcion

quería preguntar como hacer este código, Cuando el usuario ingresa una cantidad de monedas, respecto a esa cantidad ingresada se le asigna un puntaje. Después hacer lo mismo con cantidad diamantes y sus puntos a guardarse. Al final tengo que hacer la suma de ambos puntos juntos. (en mi codigo esta los datos que tenia que asignar)

#include

int main (){

int suma;  suma = cantidad_energia(suma); printf ("La suma es: %i" , suma);  return 0; 

}

int cantidad_energia (){

int resultado; int cantidad_monedas; int cantidad_diamantes; int puntos_monedas; int puntos_diamantes;  printf ("Ingrese cantidad de monedas (0-100)"); scanf( "%i", &cantidad_monedas);  printf ("Ingrese cantidad de diamantes (0-4)"); scanf("%i", &cantidad_diamantes);      if (cantidad_monedas>=0 && cantidad_monedas <= 10 ) puntos_monedas = 1;     if (cantidad_monedas>10 && cantidad_monedas <= 20 ) puntos_monedas = 2;     if (cantidad_monedas>20 && cantidad_monedas <=30 ) puntos_monedas = 3;     if (cantidad_monedas>30 && cantidad_monedas <= 40 ) puntos_monedas = 4;     if (cantidad_monedas>40 && cantidad_monedas <= 50 ) puntos_monedas = 5;     if (cantidad_monedas>50 && cantidad_monedas <= 60 ) puntos_monedas = 1;     if (cantidad_monedas>60 && cantidad_monedas <= 70 ) puntos_monedas = 2;     if (cantidad_monedas>70 && cantidad_monedas <= 80 ) puntos_monedas = 3;     if (cantidad_monedas>80 && cantidad_monedas <= 90 ) puntos_monedas = 4;     if (cantidad_monedas>=90 && cantidad_monedas <= 100 ) puntos_monedas = 5;  if (cantidad_diamantes=0) puntos_diamantes= 0;     if (cantidad_diamantes=1) puntos_diamantes= 1;     if (cantidad_diamantes=2) puntos_diamantes= 2;     if (cantidad_diamantes=3) puntos_diamantes= 3;     if (cantidad_diamantes=4) puntos_diamantes= 4;  return resultado = puntos_monedas + puntos_diamantes; 

}

Funcion de peleadores en javascript con do while

Estoy haciendo la funcion de 2 peleadores que se enfrentan y en base a su ataque y vida para declarar un ganador… lo que sucede es que si la vida de ambos es negativa declaro el ganador a partir del que tiene menor vida, no por el primero en quedar con su vida negativa o igual 0(sucede en este ejemplo que pongo con mi funcion).. necesitaria poner condiciones dentro del do while o algo asi… Alguna recomendacion para mejorar el codigo tambien me ayudaria..Gracias

function Fighter(name, health, damagePerAttack) {     this.name = name;     this.health = health;     this.damagePerAttack = damagePerAttack;     this.toString = function() { return this.name; } }  function declareWinner(fighter1, fighter2, firstAttacker) { let ganador ="El ganador es... "; let intercambio = fighter1;  console.log('Inicia la batalla... \n'); (firstAttacker != fighter1.name)  ?  (fighter1= fighter2, fighter2 = intercambio, console.log(`El primer ataque es para... `+ fighter1.name)) : console.log(`La primer ataque es para... `+fighter1.name);  do{     fighter2.health -= fighter1.damagePerAttack     console.log(`$  {fighter1.name} lanza un ataque de $  {fighter1.damagePerAttack}... La salud de $  {fighter2.name} es: $  {fighter2.health}`);      fighter1.health -= fighter2.damagePerAttack     console.log(`$  {fighter2.name} lanza un ataque de $  {fighter2.damagePerAttack}... La salud de $  {fighter1.name} es: $  {fighter1.health}`);     }while(fighter2.health >= 0 && fighter1.health >= 0)  (fighter1.health >0 & fighter1.health>fighter2.health) ? ganador+=fighter1.name : ganador+=fighter2.name  return ganador }  console.log(declareWinner(new Fighter("Pikashu", 10, 2), new Fighter("Meow", 5, 4), 'Pikashu'));

Mis apuntadores a estructura no salen de la funcion y se pierden en la memoria

Cuando se termina de ejecutar la funcion “crearFila” ninguno de los apuntadores que meti apuntan a una estructura. Si intento imprimir los datos a los que apuntan, el programa entra en un bucle y crashea.

No me habia dado cuenta de esta hasta que intente conectar una nueva fila a la que ya tenia creada anteriormente.

¿Como le hago para que los apuntadores que meta a la funcion logren salir conectados?

struct nodo *crearFila (struct nodo *ptrIni, struct nodo *ptrFin, int nmb) {     int rc = 1;     struct nodo *ptrRec1, *ptrRec2;     ptrIni = crearNodo (nmb);           //Se crea el nodo inicial.     ptrRec1=ptrIni;     printf("%d ", ptrRec1->num);     for (rc;rc<=3;rc++)                 //Se crean los tres nodos intermedios.     {         ptrRec2 = crearNodo (nmb);         ptrRec2->ptrAnt = ptrRec1;         ptrRec1->ptrSig = ptrRec2;         ptrRec1 = ptrRec1->ptrSig;         printf("%d ", ptrRec1->num);     }     ptrRec1=ptrIni;     ptrFin = crearNodo (nmb);           //Se crea el nodo final.     ptrFin->ptrAnt = ptrRec2;     ptrRec2->ptrSig = ptrFin;     printf("%d ", ptrRec2->num);     printf("\n");     return (ptrIni, ptrFin); }  struct nodo *conectFilas (struct nodo *ptrIniL, struct nodo *ptrIniV, struct nodo *ptrFinL, struct nodo *ptrFinV, int nmb) {     int cic = 1;     int rec = 1;     struct nodo *ptrRec1, *ptrRec2;     for(cic;cic<=4;cic++)     {         crearFila (ptrIniV, ptrFinV, nmb);      //Se crea la nueva fila.         ptrRec1 = ptrIniL;         ptrRec2 = ptrIniV;         for(rec;rec<=5;rec++)                   //Se inicia el enlazamiento de las filas.         {             printf("marcador");             ptrRec1->ptrDwn = ptrRec2;          //ERROR INICIA AQUI.-------------------------------------------------------             printf("marcador");             ptrRec2->ptrUp = ptrRec1;             if (rec!=5)             {                 ptrRec1 = ptrRec1->ptrSig;                 ptrRec2 = ptrRec2->ptrSig;             }         }         ptrIniL = ptrIniV;         ptrFinL = ptrFinV;     }     printf("\n");     for(cic;cic>=1;cic--)     {         ptrIniL = ptrIniL->ptrUp;         ptrFinL = ptrFinL->ptrUp;     } } 

Ejecutar función antes de enviar formulario

Me gustaría ejecutar una función antes de enviar un formulario, pero al parecer nunca se ejecuta, ¿es posible ejecutarla antes de enviarlo sin usar atributos como onsubmit="return funcion()" o enviarlo con ajax?

Formulario HTML

         <form action="search" method="GET" class="form-search" name="s-627">             <div class="search-container">                 <input class="searchBox" type="search" name="q" id="searchTerm">                 <button class="btn-form searchButton">                     <span class="icon-search">s</span>                 </button>             </div>         </form> 

Código de JS

        let form = document.querySelector('.form-search')             form.addEventListener('submit', (e) => {               e.preventDefault()               console.log('submit')               //función a ejecutar antes de enviar               saveSearch(input.value)         }) 

Como llamar una funcion en el template del componente Angular

Estoy tratando de hacer mi primer componente en angular, he checho esto en el archivo .ts, pero no se como se hace para que el countdown aparezca en el template, me imagino que debo llamar la función que lo ejecuta en en dicho template pero no se como hacerlo………………………………… …………………………………………………………..

Gracias por su ayuda

import { Component, OnInit } from '@angular/core';  @Component({   selector: 'app-countdown',   templateUrl: './countdown.component.html',   styleUrls: ['./countdown.component.css'] }) export class CountdownComponent implements OnInit {   countDownDate: number;   now: number;   days: number;   hours: number;   minutes: number;   seconds: number;   distance: number;    constructor(countDownDate_:number) {      this.countDownDate = countDownDate_;   }    mi_funcion () {      let _self = this;       let x = setInterval(function():void{          _self.now = new Date().getTime();          let distance: number = _self.countDownDate - _self.now         let days:number = Math.floor(distance / (1000 * 60 * 60 * 24));         let hours:number = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));         let minutes:number = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));         let seconds:number = Math.floor((distance % (1000 * 60)) / 1000);          console.log( `Faltan:  $  {days} Dias, $  {hours} Horas,  $  {minutes} Minutos, $  {seconds} Segundos`);          if (distance < 0){             clearInterval(x);              console.log("El tiempo para preventa he terminado");         }      },1000);  }        ngOnInit() {   }  }  let countDownDate_:number = new Date ("Jan 5, 2021 15:37:25").getTime();  let instancia = new MyCountDown(countDownDate_); instancia.mi_funcion()  

//Html

<div class="row">     <div class="col-3">Dias: </div>     <div class="col-3">Horas: </div>     <div class="col-3">Minutos</div>     <div class="col-3">Segundos</div> </div> 

metodo o funcion para subir y renombrar imagen en php

Hola amigos resulta que tengo este código que me hice en una anterior aplicación, pero resuta que la que estoy haciendo ahora es con programación orientada a objetos. Y no se como convertir este código en una función o método.

    $  nombreTemporal = $  _FILES['afile']['tmp_name'];         $  cadena = "abcdefghijklmnopqrstuwwxyzABCDEFGHIJKLMNOPQVWXYZ1234567";         $  longitud = strlen($  cadena);         $  archivo=$  _FILES['afile']['name'];         $  nombreFinal="i";         $  extension = explode(".",$  archivo);         $  ext = $  extension[1];//AQUI LA EXTENSION         for($  i=0; $  i<=6; $  i++){             $  aleatorio = rand(1, $  longitud);             $  caracter = substr($  cadena, $  aleatorio, 1);             $  nombreFinal.= $  caracter;         }         $  nombreFinal.= ".";         $  nombreFinal.= $  ext;         move_uploaded_file($  nombreTemporal, 'uploads/'.$  nombreFinal);   

El método o función quedaría mas o menos así:

  public function getSubirNombrarImagen($  imagen){       $  imagen // en esta variable iría la imagen subida desde el formulario   }         }      }  

Digamos que no se como tratar el paso de la variable $ imagen(donde irá la imagen desde formulario como parámetro) a la función y poderla tratar con la variable array : $ nombreTemporal = $ _FILES[‘afile’][‘tmp_name’]

Gracias por vuestra ayuda no busco que se me haga el código solo una orientación.

EL valor de la propiedad es nulo o no está definido, no es un objeto de función

Al llamar a una función para que parsee a milisegundos y compare las fechas, salta el siguiente error al depurar con F12. EL valor de la propiedad ‘esFechaHoraAnterior50min’ es nulo o no está definido, no es un objeto de función. El código de la función ‘esFechaHoraAnterior50min(fecha1, fecha2)’ esta copiado de otra que SI que funciona por lo que no entiendo por qué sale ese error si los campos que le paso van con datos. Gracias de antemano!

Como hacer la función ”si esto no esta activado, muestra un texto”

Hola tengo una variable que me muestra el nombre del usuario que esta registrado, el problema es que cuando no hay ninguno, me sale un notice de undefined index, tiene toda la razón. Entonces me gustaria acer es, que cuando esto pase, de que no hay usuario en el log in, me muestre un texto de usuario no registrado por ejemplo en cambio de el notice con undefined index. Gracias.

 <p>Welcome: <?php echo $  _SESSION['name']; ?></p>

He probado con if pero no me ha salido bien.