What are the potential pitfalls of using header('location:...') for redirecting back to a form after form submission in PHP?

Using header('location:...') for redirecting back to a form after form submission in PHP can cause issues with browser caching and can prevent form validation messages from being displayed. To solve this, you can use session variables to store form data and validation messages, then redirect back to the form page and populate the form fields and display the validation messages.

```php
// Start session
session_start();

// Store form data and validation messages in session variables
$_SESSION['form_data'] = $_POST;
$_SESSION['error_message'] = "Please fill out all required fields.";

// Redirect back to the form page
header('Location: form.php');
exit();
```
In the form.php page, you can then retrieve the form data and validation messages from the session variables and populate the form fields and display the error message.