1. <?php
  2. /**
  3. * PHP code to inject form parameters for an experiment with sanity checks.
  4. *
  5. * This script simulates injecting form data and performing basic checks.
  6. * It's designed to be a starting point for testing and experimentation.
  7. */
  8. // Simulated form data (replace with actual form data if needed)
  9. $formData = [
  10. 'name' => 'John Doe',
  11. 'email' => 'john.doe@example.com',
  12. 'age' => '30',
  13. 'city' => 'New York',
  14. 'country' => 'USA',
  15. 'message' => 'This is a test message.'
  16. ];
  17. // Sanity checks
  18. function validateName($name) {
  19. return (strlen($name) > 2 && strlen($name) < 50) && !preg_match('/[^a-zA-Z\s]/', $name); // Name must be 3-50 chars, only letters and spaces
  20. }
  21. function validateEmail($email) {
  22. return filter_var($email, FILTER_VALIDATE_EMAIL) !== false; // Basic email validation
  23. }
  24. function validateAge($age) {
  25. $age = (int)$age; // Convert to integer
  26. return $age >= 18 && $age <= 120; // Age between 18 and 120
  27. }
  28. // Inject and validate form parameters
  29. echo "<h2>Form Parameter Injection and Validation</h2>";
  30. echo "<pre>"; // For formatted output
  31. echo "Name: " . ($formData['name'] ?? 'N/A') . " - Valid: " . (validateName($formData['name']) ? 'Yes' : 'No') . "\n";
  32. echo "Email: " . ($formData['email'] ?? 'N/A') . " - Valid: " . (validateEmail($formData['email']) ? 'Yes' : 'No') . "\n";
  33. echo "Age: " . ($formData['age'] ?? 'N/A') . " - Valid: " . (validateAge($formData['age']) ? 'Yes' : 'No') . "\n";
  34. echo "City: " . ($formData['city'] ?? 'N/A') . "\n";
  35. echo "Country: " . ($formData['country'] ?? 'N/A') . "\n";
  36. echo "Message: " . ($formData['message'] ?? 'N/A') . "\n";
  37. echo "</pre>";
  38. ?>

Add your comment