You can identify which button was used provided you structure your HTML correctly
<input type="submit" name="action" value="Edit"> <input type="submit" name="action" value="Preview"> <input type="submit" name="action" value="Post">
The $_POST array (or $_GET/$_REQUEST) will contain the key "action" with the value of the enacted button (whether clicked or not).
Now, "clicking" is explicitly a client-side behavior - if you want to differentiate between a click and a keypress, you'll need to add some scripting to your form to aid in that determination.
Edit
Alternatively, you can be "sneaky" and use a hidden submit that should correctly identify a key-pressed for submission, but this probably has some significant impact on accessibility.
<?php if ( 'POST' == $_SERVER['REQUEST_METHOD'] ) { echo '<pre>'; print_r( $_POST ); echo '</pre>'; } ?> <form method="post"> <input type="text" name="test" value="Hello World"> <input type="submit" name="action" value="None" style="display: none"> <input type="submit" name="action" value="Edit"> <input type="submit" name="action" value="Preview"> <input type="submit" name="action" value="Post"> </form>