PHP ਵਿੱਚ ਫਾਰਮ ਅਤੇ ਉਪਭੋਗਤਾ ਡੇਟਾ ਨੂੰ ਸੰਭਾਲਣਾ

ਵੈੱਬ ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਣਾਉਣ ਵੇਲੇ, ਅਜਿਹੇ ਫਾਰਮ ਹੋਣਾ ਆਮ ਗੱਲ ਹੈ ਜੋ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਡੇਟਾ ਇਨਪੁਟ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੇ ਹਨ। PHP ਵਿੱਚ, ਅਸੀਂ ਫਾਰਮ ਸਬਮਿਸ਼ਨ ਨੂੰ ਸੰਭਾਲ ਸਕਦੇ ਹਾਂ ਅਤੇ ਉਪਭੋਗਤਾ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰ ਸਕਦੇ ਹਾਂ। ਇਸ ਲੇਖ ਵਿੱਚ, ਅਸੀਂ ਖੋਜ ਕਰਾਂਗੇ ਕਿ PHP ਵਿੱਚ ਫਾਰਮਾਂ ਅਤੇ ਉਪਭੋਗਤਾ ਡੇਟਾ ਨੂੰ ਕਿਵੇਂ ਸੰਭਾਲਣਾ ਹੈ।

 

HTML ਫਾਰਮ ਬਣਾਉਣਾ

ਇੱਕ HTML ਫਾਰਮ ਬਣਾਉਣ ਲਈ, ਅਸੀਂ <form> ਵੱਖ-ਵੱਖ ਇਨਪੁਟ ਤੱਤਾਂ ਦੇ ਨਾਲ ਟੈਗ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ ਜਿਵੇਂ ਕਿ <input>, <select> ਅਤੇ <textarea>. ਇੱਥੇ ਇੱਕ ਸਧਾਰਨ ਫਾਰਮ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ:

<form method="POST" action="process.php">  
  <label for="name">Name:</label>  
  <input type="text" id="name" name="name">  
  
  <label for="email">Email:</label>  
  <input type="email" id="email" name="email">  
  
  <input type="submit" value="Submit">  
</form>  

ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਵਿੱਚ, ਸਾਡੇ ਕੋਲ ਨਾਮ ਅਤੇ ਈਮੇਲ ਲਈ ਦੋ ਇਨਪੁਟ ਖੇਤਰਾਂ ਵਾਲਾ ਇੱਕ ਫਾਰਮ ਹੈ। ਫਾਰਮ ਦੀ method ਵਿਸ਼ੇਸ਼ਤਾ "POST" 'ਤੇ ਸੈੱਟ ਕੀਤੀ ਗਈ ਹੈ, ਅਤੇ action ਵਿਸ਼ੇਸ਼ਤਾ ਉਸ URL ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਦੀ ਹੈ ਜਿਸ 'ਤੇ ਫਾਰਮ ਡੇਟਾ ਸਪੁਰਦ ਕੀਤਾ ਜਾਵੇਗਾ।

 

ਫਾਰਮ ਸਬਮਿਸ਼ਨਾਂ ਨੂੰ ਸੰਭਾਲਣਾ

PHP ਵਿੱਚ ਫਾਰਮ ਸਬਮਿਸ਼ਨਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ, ਸਾਨੂੰ ਇੱਕ ਵੱਖਰੀ PHP ਫਾਈਲ ਬਣਾਉਣ ਦੀ ਲੋੜ ਹੈ ਜੋ ਜਮ੍ਹਾਂ ਕੀਤੇ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰੇਗੀ। ਇੱਥੇ ਇੱਕ ਬੁਨਿਆਦੀ ਫਾਰਮ ਪ੍ਰੋਸੈਸਿੰਗ ਸਕ੍ਰਿਪਟ ਦੀ ਇੱਕ ਉਦਾਹਰਨ ਹੈ:

<?php  
if($_SERVER['REQUEST_METHOD'] === 'POST') {  
  $name = $_POST['name'];  
  $email = $_POST['email'];  
  
  // Perform validation and data processing here  
  
  // Redirect to a thank you page  
  header('Location: thankyou.php');  
  exit;  
}  
?>  

ਉਪਰੋਕਤ ਸਕ੍ਰਿਪਟ ਵਿੱਚ, ਅਸੀਂ $_POST "POST" ਵਿਧੀ ਦੁਆਰਾ ਜਮ੍ਹਾਂ ਕੀਤੇ ਫਾਰਮ ਡੇਟਾ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ ਸੁਪਰਗਲੋਬਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। name ਅਸੀਂ ਉਹਨਾਂ ਦੇ ਅਨੁਸਾਰੀ ਨਾਮਾਂ(ਅਤੇ email ਇਸ ਕੇਸ ਵਿੱਚ) ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਫਾਰਮ ਖੇਤਰਾਂ ਦੇ ਮੁੱਲਾਂ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹਾਂ । ਅਸੀਂ ਫਿਰ ਕੋਈ ਵੀ ਜ਼ਰੂਰੀ ਪ੍ਰਮਾਣਿਕਤਾ ਅਤੇ ਡੇਟਾ ਪ੍ਰੋਸੈਸਿੰਗ ਕਰ ਸਕਦੇ ਹਾਂ।

ਫਾਰਮ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਉਪਭੋਗਤਾ ਨੂੰ ਧੰਨਵਾਦ ਪੰਨੇ ਜਾਂ ਕਿਸੇ ਹੋਰ ਢੁਕਵੇਂ ਪੰਨੇ 'ਤੇ ਰੀਡਾਇਰੈਕਟ ਕਰਨਾ ਆਮ ਗੱਲ ਹੈ। ਉਦਾਹਰਨ ਵਿੱਚ, ਅਸੀਂ header() ਬ੍ਰਾਊਜ਼ਰ ਨੂੰ ਰੀਡਾਇਰੈਕਟ ਹੈਡਰ ਭੇਜਣ ਲਈ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ।

 

ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ

ਡੇਟਾ ਦੀ ਇਕਸਾਰਤਾ ਅਤੇ ਸੁਰੱਖਿਆ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ। PHP ਇਨਪੁਟ ਪ੍ਰਮਾਣਿਕਤਾ ਲਈ ਵੱਖ-ਵੱਖ ਫੰਕਸ਼ਨਾਂ ਅਤੇ ਤਕਨੀਕਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ filter_var() ਅਤੇ ਨਿਯਮਤ ਸਮੀਕਰਨ। ਇੱਥੇ ਇੱਕ ਈਮੇਲ ਪਤੇ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਦਾ ਇੱਕ ਉਦਾਹਰਨ ਹੈ:

$email = $_POST['email'];  
  
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {  
  // Email is valid  
} else {  
  // Invalid email  
}  

ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਵਿੱਚ, ਅਸੀਂ ਈਮੇਲ ਪਤੇ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਲਈ ਫਿਲਟਰ filter_var() ਦੇ ਨਾਲ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। FILTER_VALIDATE_EMAIL ਜੇਕਰ ਈਮੇਲ ਵੈਧ ਹੈ, ਤਾਂ ਅਸੀਂ ਅੱਗੇ ਦੀ ਪ੍ਰਕਿਰਿਆ ਦੇ ਨਾਲ ਅੱਗੇ ਵਧ ਸਕਦੇ ਹਾਂ। ਨਹੀਂ ਤਾਂ, ਅਸੀਂ ਗਲਤੀ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਸੰਭਾਲ ਸਕਦੇ ਹਾਂ।

 

ਯੂਜ਼ਰ ਇਨਪੁਟ ਨੂੰ ਰੋਗਾਣੂ-ਮੁਕਤ ਕਰਨਾ

ਯੂਜ਼ਰ ਇਨਪੁਟ ਨੂੰ ਸੈਨੀਟਾਈਜ਼ ਕਰਨ ਨਾਲ SQL ਇੰਜੈਕਸ਼ਨ ਅਤੇ ਕਰਾਸ-ਸਾਈਟ ਸਕ੍ਰਿਪਟਿੰਗ(XSS) ਵਰਗੀਆਂ ਸੁਰੱਖਿਆ ਕਮਜ਼ੋਰੀਆਂ ਨੂੰ ਰੋਕਣ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ। PHP ਰੋਗਾਣੂ-ਮੁਕਤ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨ htmlspecialchars() ਅਤੇ ਡਾਟਾਬੇਸ-ਵਿਸ਼ੇਸ਼ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇੱਥੇ ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ ਨੂੰ ਰੋਗਾਣੂ-ਮੁਕਤ ਕਰਨ ਦਾ ਇੱਕ ਉਦਾਹਰਨ ਹੈ:

$name = $_POST['name'];  
  
$sanitizedName = htmlspecialchars($name, ENT_QUOTES, 'UTF-8');  
  
// Use the sanitized name for further processing  

ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਵਿੱਚ, ਅਸੀਂ htmlspecialchars() ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ ਨਾਮ ਨੂੰ ਸਾਫ਼ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ। ਇਹ ਫੰਕਸ਼ਨ ਵਿਸ਼ੇਸ਼ ਅੱਖਰਾਂ ਨੂੰ ਉਹਨਾਂ ਦੀਆਂ HTML ਇਕਾਈਆਂ ਵਿੱਚ ਬਦਲਦਾ ਹੈ, ਕਿਸੇ ਵੀ ਸੰਭਾਵੀ HTML ਜਾਂ ਸਕ੍ਰਿਪਟ ਇੰਜੈਕਸ਼ਨ ਨੂੰ ਰੋਕਦਾ ਹੈ।

 

ਸਿੱਟੇ ਵਜੋਂ, ਫਾਰਮਾਂ ਅਤੇ ਉਪਭੋਗਤਾ ਡੇਟਾ ਨੂੰ ਸੰਭਾਲਣਾ PHP ਵੈੱਬ ਵਿਕਾਸ ਦਾ ਇੱਕ ਜ਼ਰੂਰੀ ਹਿੱਸਾ ਹੈ. HTML ਫਾਰਮ ਬਣਾ ਕੇ, ਫਾਰਮ ਸਬਮਿਸ਼ਨਾਂ ਦੀ ਪ੍ਰੋਸੈਸਿੰਗ ਕਰਕੇ, ਉਪਭੋਗਤਾ ਦੇ ਇਨਪੁਟ ਨੂੰ ਪ੍ਰਮਾਣਿਤ ਕਰਕੇ, ਅਤੇ ਡੇਟਾ ਨੂੰ ਰੋਗਾਣੂ-ਮੁਕਤ ਕਰਕੇ, ਅਸੀਂ ਆਪਣੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੀ ਇਕਸਾਰਤਾ ਅਤੇ ਸੁਰੱਖਿਆ ਨੂੰ ਯਕੀਨੀ ਬਣਾ ਸਕਦੇ ਹਾਂ।