When developing in PHP, you may encounter common mistakes. Some of these mistakes are simple, while others can be time-consuming and complicate your development process.
Here are the most frequent PHP mistakes and their solutions:
1. Undefined Variable
Error
Error: Trying to use an undefined variable.
echo $name;
Why Does It Happen? PHP does not throw an error but shows a “Notice” warning when trying to use an undefined variable.
Solution: Always define variables before using them.
$name = "Ali";
echo $name;
Or check if the variable exists:
if (isset($name)) {
echo $name;
} else {
echo "Variable is not defined!";
}
2. Headers Already Sent
Error
Error: Trying to use header()
after sending output to the browser.
echo "Welcome!";
header("Location: homepage.php");
Why Does It Happen? PHP cannot modify HTTP headers after outputting any content.
Solution: Always use header()
before any output:
header("Location: homepage.php");
exit;
echo "Welcome!";
Alternatively, use output buffering:
ob_start();
echo "Welcome!";
header("Location: homepage.php");
ob_end_flush();
3. Vulnerability to SQL Injection
Error: Using raw user input in SQL queries.
$query = "SELECT * FROM users WHERE username = '" . $_GET['username'] . "'";
Why Does It Happen? This allows malicious users to inject harmful SQL queries.
Solution: Always use PDO
or mysqli_real_escape_string()
to sanitize input:
$stmt = $db->prepare("SELECT * FROM users WHERE username = ?");
$stmt->execute([$_GET['username']]);
$result = $stmt->fetch();
Post Comment