Nueva pregunta

Pregunta:

Fecha: 18-04-2017 09:56:05 (En Español)

Permitir al usuario crear formulas matematicas con PHP y MySQL[No resuelta]

Buenas gente

Tengo una idea y no se bien como encarar el trabajo, he aquí mi solicitud de ayuda.

Imaginemos que tengo una TABLA que contiene 2 campos HORAS_TRABAJADAS y VALOR_HORA
Supongamos que si quisiera saber cuanto gana una persona multiplico HORAS_TRABAJADAS * VALOR_HORA = RESULTADO.

Ahora bien, esta es mi consulta y mi pretensión:

Quisiera decirle al usuario, Sr. usted tiene dos variables pre configuradas, que son:

1.- HORAS_TRABAJADAS
2.- VALOR_HORA

Usted puede crear su propia formula:

Ingrese una variable y póngale un nombre (Por Ejemplo: RESULTADO), en otro campo, indique la operación,
HORAS_TRABAJADAS * VALOR_HORA (Seguramente, esta operación, se va a grabar en un campo de una TABLA como texto).

Entonces, cada vez que llame a esta variable RESULTADO, me va a dar el resultado.

Espero haber sido claro, de no serlo, pido mis disculpas

Un saludo y gracias por su atención
Etiquetas: AJAX - Base de Datos - MySQL - PHP - Pregunta Votos: 1 - Respuestas: 3 - Vistas: 25 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 21-04-2017 10:42:36 Pues la lógica es compleja , pero si utiliza MySQL 5.7 ahora puedes guardar campos JSON en tu BBDD.

    suponiendo eso ahora puedes guardar una estructura compleja

    {
        campos: [
             { 'nombre': 'horas_trabajadas', valor: 12 },
             { 'nombre': 'valor_hora', valor: 1.5},
        ],
        operacion: {
         tipo: 'multiplicacion',
         valores: ['horas_trabajadas', 'valor_hora']
        }
    }


    Ahora cuando hagas tu logica tienes que hacer algo como:

    if($datos['operacion']['tipo'] == 'multiplicacion'){
        for($i = 0, $i < count($datos['campos']), $i++){
            if($datos['campos'][$i]['nombre'] == $datos['operacion']['valores'][0]){
                $multiploA = $datos['campos'][$i]['valor'];
            }
            if($datos['campos'][$i]['nombre'] == $datos['operacion']['valores'][1]){
                $multiploB = $datos['campos'][$i]['valor'];
            }
        }
    
       $resultado = $multiploA * $multiploB;
    }


    Ahora que si estamos hablando de más de 2 cantidades y muchos tipos de operación, bueno ya es una lógica más compleja.

    Esto es totalmente variable, así que la idea es que entiendas tu logica.

    Por cierto el código PHP, requiere que el valor del campo lo pases a ARRAY() si no, no se puede hacer asi jejeje. ES que ya trabajo solo con JS
      Votos: 3 - Link respuesta
     
  • Fecha: 21-04-2017 11:47:22 Excelente Porfirio, yo le estaba dando vueltas al tema para tratar de ayudar a nuestro colega Antuan, pero no se me ocurria nada elegante como lo que propusiste +1

    También se podría guardar el JSON en un campo de texto y parsearlo al momento de recuperarlo, por ejemplo con un json_decode

    Saludos a todos y como siempre buen código!
      Votos: 2 - Link respuesta
     
  • Fecha: 21-04-2017 18:00:01 Pofidio / Fernando

    Muchas gracias por su colaboración, pienso experimentar con la idea de Porfideo, prometo exponer los resultados.

    Desde ya muchas gracias por su atención y tiempo
      Votos: 1 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com