> Faqs > Desactivar botón de una página cuando se llega desde otra página bajo una condición con PHP

Desactivar botón de una página cuando se llega desde otra página bajo una condición con PHP

Hola es mi primer dia en desarrolloweb encontre esta web buscando información. Estoy buscando información para poder desactivar un boton desde otra pagina.

Ejemplo:

Usuario: (funes) presiona boton 2 de la pagina llamada botones.php. Ese boton lo lleva a exito.php

[boton 1]
[boton 2]
[boton 3]

usuario: (funes) llego a la pagina exito.php. Cuando usuario (funes) preciona el boton de exito.

[exito]

Entonces vuelve a la página botones.php y se desactiva el [boton 2], solo para el usuario que lo presionó.

Espero que se entienda espero su respuesta

Respuestas

Tal como has planteado la duda, diciendo que son páginas distintas, entiendo que al pulsar un botón se navegará de una página a la otra, por lo que se realizará una carga de una página completa. Además mencionas que las páginas son PHP, por lo que entiendo que quieres una solución basada en programación del lado del servidor.

... Pero también podrías hacer esto mismo del lado del cliente, con Javascript y sin necesidad de recargar la página entera. Todo es cuestión de saber qué experiencia de uso quieres dar a tus usuarios, y la verdad que con lo que comentas poco se puede entender de este sentido.

Centrándome en PHP, que es la solución más obvia, tendrás que hacer un sistema para que se envíen datos desde una página a otra, para que al pulsar los botones se envíen datos y puedas saber que vienes desde una u otra página pulsando uno u otro botón.

Para pasar datos entre páginas en PHP la opción más sencilla es hacerlo mediante la URL. Es realmente fácil y puedes aprenderlo en la página Pasar datos por la URL (GET).

Con este enfoque lo que tendrás que hacer es que cada uno de los botones de la página botones.php envíen una variable a la página siguiente (exito.php) indicando qué botón se ha pulsado. Entonces en la página exito.php tendrás que volver a la página botones.php enviando otra variable que indique qué botón se había pulsado anteriormente.

La cosa se puede complicar todavía más si la página botones.php necesita memorizar los botones que se han pulsado en todo el flujo de trabajo del usuario con la página, porque entonces empezarás a tener que pasar un montón de variables de página a página indicando qué botones se lleva pulsados. En este caso el enfoque de pasar variables por URL deja de ser práctico y te surge entonces la necesidad de usar variables de sesión, que son mucho más cómodas. Para aprender este punto necesitarías leer el artículo de manejar variables de sesión en PHP.

Alberto
578 14 40 17

Buenas tardes mi estimado, en tu caso yo haria lo siguiente;

crearia sesiones: haria que se loguee cada usuario

despues, con las id otorgadas en la base de datos crearia la tabla botones, cuando el usuario clickee en un boton cabiara el estatus de 0 a 1 lo cual hara que;

los botones con el id de usuario logueado sean igual a 1 no se muestren en la página pero que en la base de datos me muestre que ya previamente lo ha pinchado, si gustas podria apoyarte con un ejemplo practico si me facilitas mas información

un ejemplo de las tablas que podrias crear:

tabla_usuarios id_usuario = 1 nombre = Matias apellido = Cantu

tabla_botones id_usuario = 1 boton_1 = 1 boton_2 = 0 boton_3 = 0

eso haria que en la página botones solo se muestren los botones cuyo boton_N = 0 o 1 según lo prefieras

matias
5 1

Buenas,

Antes de nada aviso que solo soy un aficionado y que seguro que algún otro usuario puede asesorarte mejor, pero te dejo una respuesta que ojalá te sirva de ayuda.

Hasta donde yo se el php se ejecuta en el servidor con lo cual no puedes cambiar el estado de un objeto sin actualizar la página Te valdría actualizar la página completa (donde está ese button que quieres deshabilitar) en vez de cambiar solo el estado?

Saludos

David
95 4 11
Gracias por responder y sacarme esa duda si se podía hacer de esa forma