Puede darse el caso de que halles algún error en tu código o proyecto, recuerda probar siempre en un ambiente de testing antes añadir el código al trabajo final.
Solución:
Solución 1:
Asigne a cada entrada un valor diferente y mantenga el mismo nombre:
Luego, en el código, verifique cuál se activó:
if ($_POST['action'] == 'Update')
//action for update here
else if ($_POST['action'] == 'Delete')
//action for delete
else
//invalid action!
El problema con eso es que vincula su lógica al texto visible para el usuario dentro de la entrada.
Solución 2:
Asigne a cada uno un nombre único y verifique en $_POST la existencia de esa entrada:
Y en el código:
if (isset($_POST['update_button']))
//update action
else if (isset($_POST['delete_button']))
//delete action
else
//no button pressed
Si le da un nombre a cada uno, el que hizo clic se enviará como cualquier otra entrada.
Una solución aún mejor consiste en usar etiquetas de botón para enviar el formulario:
el html en el interior el botón (por ejemplo ..>Update<..
es lo que ve el usuario; debido a que se proporciona HTML, el value
no es visible para el usuario; solo se envía al servidor. De esta manera, no hay inconveniente con la internacionalización y los múltiples idiomas de visualización (en la solución anterior, la etiqueta del botón también es el valor enviado al servidor).
Aquí puedes ver las reseñas y valoraciones de los lectores
Recuerda algo, que puedes optar por la opción de interpretar si te fue de ayuda.