Duda con java, metadatos y sql

estoy viendo un tutorial de metadatos mysql y el profesor tira unas lineas para ver todas las tablas que hay en una base de datos y cargarlas en un JCOMBOBOX. Yo hago practicamente lo mismo y me tira mil items distintos que entiendo que son las tablas de TODAS las base de datos que tengo, inclusive las que vienen por defecto en phpmyadmin que ni se para que sirven pero ahí estan (performance_schema, phpmyadmin, test, etc). Es raro, por que cuando armo la conexion, especifico que es hacia una base de datos en particular (bd1).
Pude solucionarlo cambiando el primero de los 4 nulls que le paso por parametro al metodo getTables donde escribo la base de datos a la que quiero llamar. pero sigo sin entender por que el profesor del tutorial puede hacerlo sin cambiar eso y de hecho dice que no es necesario. Busqué en la API pero no hayé respuesta. Las lineas en cuestión, están en la ultima clase de todas (LaminaBBDD). Dejo una foto de la base de datos por las dudas

import java.awt.*;

import javax.swing.*;
import java.sql.*;

public class AplicacionUniversal {

    public static void main(String() args) {
        // TODO Auto-generated method stub

        MarcoBBDD mimarco = new MarcoBBDD();

        mimarco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        mimarco.setVisible(true);

    }

}

class MarcoBBDD extends JFrame {

    public MarcoBBDD() {

        setBounds(300, 300, 700, 700);

        LaminaBBDD milamina = new LaminaBBDD();

        add(milamina);

    }

}

class LaminaBBDD extends JPanel {

    private JComboBox comboTablas;

    private JTextArea areaInformacion;

    public LaminaBBDD() {

        setLayout(new BorderLayout());

        comboTablas = new JComboBox();

        areaInformacion = new JTextArea();

        add(areaInformacion, BorderLayout.CENTER);

        add(comboTablas, BorderLayout.NORTH);

        Connection con;

        try {

            con = DriverManager.getConnection("jdbc:mysql://localhost/bd1", "root", "");

            DatabaseMetaData metadatos = con.getMetaData();

            ResultSet rs = metadatos.getTables(null, null, null, null);

            while (rs.next()) {

                comboTablas.addItem(rs.getString("TABLE_NAME"));
            }

        } catch (Exception e) {

        }

    }
}

base de datos

javascript – Optimizar y duda con iteración del bucle for

Ahora mismo tengo un array de 6 objetos, los cuales son estos:

0: Object { hp: 9999, atk: 255, def: 255, … }
1: Object { hp: 9999, atk: 255, def: 255, … }
2: Object { hp: 9999, atk: 255, def: 255, … }
3: Object { hp: 800000, atk: 180, def: 200, … }
4: Object { hp: 180000, atk: 120, def: 100, … }
5: Object { hp: 180000, atk: 120, def: 100, … }
length: 6

Para iterarlos utilizo un bucle for:

function selectTurn(arg){

    for(let i=0;i<arg.length;i++){

        var turn = setInterval(function(i){
            arg(i).vel++;

            document.querySelectorAll('.turn-rest')(i).style.width=arg(i).vel+'px';
            if(arg(0).vel == 100){
                arg(0).vel = 0;
                document.querySelectorAll('.turn-rest')(0).style.width='0px';
            }
            if(arg(1).vel == 70){
                arg(1).vel = 0;
                document.querySelectorAll('.turn-rest')(1).style.width='0px';
            }
            if(arg(2).vel == 70){
                arg(2).vel = 0;
                document.querySelectorAll('.turn-rest')(2).style.width='0px';
            }
            if(arg(3).vel == 65){
                arg(3).vel = 0;
                document.querySelectorAll('.turn-rest')(3).style.width='0px';
            }
            if(arg(4).vel == 40){
                arg(4).vel = 0;
                document.querySelectorAll('.turn-rest')(4).style.width='0px';
            }
            if(arg(5).vel == 50){
                arg(5).vel = 0;
                document.querySelectorAll('.turn-rest')(5).style.width='0px';
            }
        },100, i);
    }
}

Lo primero y lo que más atención me llama es:

¿Por qué narices se desordena el array a su gusto?
Si antes llevaba el orden de, los 3 primeros objetos tienen 9999 y los tres siguientes tienen 800000 y 180000, cómo es posible que cambie el orden a este:

0: Object { hp: 800000, atk: 180, def: 200, … }
1: Object { hp: 180000, atk: 120, def: 100, … }
2: Object { hp: 180000, atk: 120, def: 100, … }
3: Object { hp: 9999, atk: 255, def: 255, … }
4: Object { hp: 9999, atk: 255, def: 255, … }
5: Object { hp: 9999, atk: 255, def: 255, … }
length: 6

Entendería que lo ordenara al revés, y eso no estaría mal del todo. ¿Pero tan aleatoriamente? (Para aclarar, los de hp 9999 están entremezclados entre si también).

Lo segundo es:

Entiendo cómo trabaja el bucle for, pero no se me ocurre ninguna idea para optimizar todas esos if.

¿Alguna sugerencia?

Laravel Sanctum – Duda – Stack Overflow en español

Estoy empezando a implementar esta herramienta a mi proyecto porque necesito que mi sistema genere tokens para hacer peticiones desde una aplicacion movil. Lo tengo implementado correctamente pero tanto en la documentacion como buscando en otros sitios me doy cuenta que solamente sirve para petionces GET.

Ya que si quiero utilizarlo en una peticion POST en mi proyecto de laravel, obligatoriamente debo quitarle la proteccion de token que tiene el middleware de auth

Por eso mi pregunta seria:

  • ¿Se puede utilizar Laravel Sanctum para hacer peticiones POST sin la necesidad de quitar la proteccion de token, en tal caso de ser si, como se implementaria?

Duda sobre la función pbinom en R

Tengo el siguiente ejercicio:

Consideramos Y una variable aleatoria que sigue una distribución
B(50;0.3).Calculad, utilizando R, P (Y = 20), P (Y < 7), P (Y >
70).

Bien para resolverlo he utilizado la función pbinom, quedando asi:

pbinom(20,50,0.3)
pbinom(7,50,0.3)
pbinom(70,50,0.3)

Y me devuelve lo siguiente:

> pbinom(20,50,0.3)
(1) 0.9522362
> pbinom(7,50,0.3)
(1) 0.007264203
> pbinom(70,50,0.3)
(1) 1

Y mi duda es la siguiente: ¿Cómo sabe o distingue R que sea Y=20 o que sea Y<7 o Y>70? Si como parámetro solo me pide la variable, y ningún tipo de operador. Por que por esto, no se si el ejercicio esta bien resuelto o no.

html – Duda sobre docker

Como podria mostrar una base de datos de un contenedor con otro contenedor con nginx,

Para ser mas especifico necesito que el contenedor donde estara expuesto el nginx se conecte a otro contenedor donde estara la base de datos y que me lo muestre en el nginx, si me pudieran compartir los comandos de docker gracias. Ya probe varios comandos pero no me ah funcionado ninguno

javascript – Duda con React useState y objetos

resulta que estoy desarrollando una aplicación y me he topado con un comportamiento curioso en el manejo de estadoscon hooks.
Primero que nada quiero aclarar que entiendo la diferencia entre variable de valor y variable, es decir que entiendo como funciona el siguiente código.

let a = 10,b={index:'value'};
let c = a, d = b;
c++; // en este punto a = 10 y c = 11
d.index = 'value2'; // en este punto d y b apuntan al mismo objeto, por lo que ambos tendran un valor de value2 en el indice index.

Ahora bien, mi duda es la siguiente. Suponiendo que tengo el siguiente fragmento de código.

const (counter, setCouner) = useState({ value: 0 });

y luego en alguna función, asociada por ejemplo al click sobre un boton, tengo el siguiente codigo

let countercopy = counter;
countercopy.value++;

¿Por qué react no realiza un renderizado para actualizar la vista, si el valor de la variable de estado está siendo editado?, ¿Será que react necesita obligatoriamente la llamada a setCounter?

Y ademas, suponiendo que dentro de esa fución llamo a una función más, cuyo flujo depende del valor de counter.value, puedo confiar en que el valor leído por la función 2 será el valor almacenado en memoria? ¿incluso si react no realiza el renderizado?
Es decir, supongamos que realizo una peticion axios cuando el contador llegue a 50.

Adjunto un codigo de ejemplo escrito en codesandbox.

Link del código: https://codesandbox.io/s/quizzical-cherry-olvf8?file=/src/index.js

c++ – Duda teorica sobre recursividad en vectores

Mi pregunta es si puede un procedimiento recursivo tener dos casos bases?
Estaba realizando un modulo que me el cual me pedia que teniendo dos vectores con valores cargados, asigne al primer vector el producto de los dos vectores, utilizando para el calculo de producto sumas sucesivas, y recursividad.
De la manera sencilla se me ocurrió hacerlo de esta manera:

void multiplicar_vec (tvector &vec1,tvector vec2){
int i;
for (i=0;i<=MAX-1;i++){
    vec1(i)=producto(vec1(i),vec2(i))
    cout<<vec(i)<<endl;
    }
cout<<endl;
}

int producto (int a, int b){
int p;
if (b==1)
    p=a;
    0
else
    p=a+producto(a,b-1);
return p;
}

De esta manera el modulo funcionaba, pero yo quería hacerlo todo en un modulo, y se me ocurrió esta idea:

void producto (tvector &vec1,tvector vec2,int a, int b, int &p,int i=MAX-1)
{
if (i==0){ //caso base para recorrer el vector
    a=vec1(i);
b=vec2(i);
        if (b==1)// caso base para realizar el producto mediante sumas sucesivas
        p=a;
        else{
        producto (vec1,vec2,a,b-1,p,i);
                    p=p+a;}
    vec1(i)=p;
   } else{
   
        producto(vec1,vec2,a,b,p,i--);
        i++;
         a=vec1(i);
b=vec2(i);
        if (b==1)
        p=a;
        else{
       producto (vec1,vec2,a,b-1,p,i);
                    p=p+a;}
        vec1(i)=p;
}
}

Cuando hice esto, lo realice pensando en tener dos casos bases uno para recorrer el vector y otro para hacer el producto. Cuando me compiló, surgia error. Entonces pensé que quizas no se pueda realizar un solo modulo con dos casos bases, o el segundo modulo que realice tenga muchos errores (lo cual es muy probable).
Pero bueno, esa es mi duda. Si alguien me puede ayudar o dar su punto de vista me ayudaria bastante. Desde ya si esta leyendo esto ¡Muchas Gracias!

Duda sobre buenas practicas en javascript

Es buena practicas mezclar codigo html con javascript ?
Es decir, si para mostrar los datos de un json, poner por ejemplo una tabla de esta forma


    const CONTENIDO = document.getElementById('contenido')

datos.results.forEach(e => {
                           showData(e)
}
const showData = data => {
    const elemento = `
    <tr>
    <th scope="row">${data.id}</th>
    <td id="contenidoNombre">${data.name}</td>
    </tr>
    `;
    CONTENIDO.insertAdjacentHTML('beforeend', elemento);
}

 

O se debe de crear cada elemento con las funciones de javascript, es decir con

createElement('tr');  
createElement('td')  
createTextNode(data.id) 
createTextNode(data.name)

Y luego unir cada elemento a su padre con appendChild para mostrar los datos ?

duda con la api de whatsapp y javascript

Si quiero enviar un mensaje de texto comun funciona, ejemplo

<a href={"https://api.whatsapp.com/send?phone=5412345678&amp;text=Hola"}>

pero si quiero enviarle una variable

<a href={"https://api.whatsapp.com/send?phone=5412345678&amp;text= El%20Producto%20es" + name.producto}>

o

<a href={`https://api.whatsapp.com/send?phone=5412345678&amp;text= El%20Producto%20es ${name.producto}`>

ya no funciona, como que whatsapp no recoge el mensaje asi las url sean identicas

alguna forma de hacerlo funcionar?

php – Duda sobre cómo definir una plantilla diferente para cada post según la categoría

les comento mi situación. Actualmente tengo 45 plantillas de páginas que uso para mostrar 45 tipos de ítems, cada una de esas páginas consta de una tabla común a las 45 plantillas, y la única razón por la cual he creado esas 45 plantillas de páginas es porque en cada página muestro las publicaciones de determinadas categorías, es decir, cada página representa a una categoría principal.

Las 45 plantillas de página:

Las 45 plantillas de página

La tabla que muestro en las 45 páginas:
La tabla

Entonces, mi dolor de cabeza es de esperarse cada vez que quiero añadir alguna nueva funcionalidad o cambiar algún aspecto de diseño y tener que hacerlo con 45 páginas y que todo quede idéntico… novatadas que debo pagar.

Por lo tanto me he puesto a investigar y encontré la manera de definir una plantilla de página diferente según la categoría:

// Filtrando por slug
if (in_category('noticias')) {
    include(TEMPLATEPATH . '/single-noticias.php');
} elseif (in_category('eventos')) {
    include(TEMPLATEPATH . '/single-eventos.php');
} else { // Sino, cargo otro single por defecto
    include(TEMPLATEPATH . '/single-default.php');
}

Eso me da la posibilidad de establecer una única plantilla para cargar / mostrar las publicaciones de esa(s) categoría(s) en particular, y ya no tendría que editar 45 páginas, sino 1 página…que maravilla.

Ahora bien… mi idea al principio fue la de crear 45 páginas para mostrar cosas de 45 categorías, para ello tengo este loop:

<?php $loop = new WP_Query( array( 'post_type' => $post_type, 'category_name' => $cat_name_a, 'posts_per_page' => 700 ) ); 
  while ( $loop->have_posts() ) : $loop->the_post(); ?>
     ...
     ...
     ...
<?php endwhile; ?>

Donde $post_type y $category_name los edito a mano uno por uno en cada página, y antes del loop:

$post_type = 'item';
$cat_name_a = 'armaduras';

Y lo demás son 45 historias…

Con todo lo anterior, mi duda es la siguiente:

¿Cómo puedo seguir cargando el contenido según la categoría? ¿Que category_name voy a colocar en el loop para mostrar 45 categoríasojo, una por cada página – no todas al mismo tiempo, para que no cambie el comportamiento actual? En este momento todo funciona perfecto, entras a la página de cascos y te muestra todos los cascos, entras a la de armaduras y muestra todas las armaduras, y así, todo según la categoría que define a esa publicación…

Aquí está la muestra, baja un poquito y en Equipos para el Cuerpo, las primeras 6 páginas. Ellas muestran una o varias publicaciones en una tabla (la que mencioné al principio), esas publicaciones están asignadas a una categoría con el mismo nombre de la página, es decir, cascos, armaduras, escudos, pantalones, botas, etc… por lo tanto cada publicación se muestra donde tiene que ir.

En cada página editaba manualmente la variable $cat_name_a = 'armaduras'; que define el category_name para las publicaciones que muestra el loop, pero con la asignación de plantillas según la categoría no se como seguir mostrando esas publicaciones como lo vengo haciendo.

Si alguien me puede ayudar le estaré muy agradecido. Y de antemano muchas gracias por pasar a leerme.

Otros datos:

  • No se si afecta que las publicaciones que quiero mostrar tienen más
    de una categoría asignada, dentro de ellas una categoría que es
    principal y es la que uso para mostrar ese contenido asignado a ella.
  • Esas publicaciones provienen de un custom_post.