PHP and MySQL form a powerful duo for web development. MySQL is a popular relational database management system, and PHP provides robust tools for interacting with it. This integration allows developers to create dynamic, data-driven websites efficiently.
To begin working with a MySQL database in PHP, you first need to establish a connection. Here's a basic example:
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
This code creates a new mysqli object, which represents the connection to your MySQL database. Always check for connection errors to ensure smooth operation.
Once connected, you can execute SQL queries to interact with your database. Here's an example of a SELECT query:
$sql = "SELECT id, firstname, lastname FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "";
}
} else {
echo "0 results";
}
This code retrieves all users from the 'users' table and displays their information. The fetch_assoc()
method returns each row as an associative array.
For improved security and performance, use prepared statements when working with user input:
$stmt = $conn->prepare("INSERT INTO users (firstname, lastname) VALUES (?, ?)");
$stmt->bind_param("ss", $firstname, $lastname);
$firstname = "John";
$lastname = "Doe";
$stmt->execute();
echo "New record created successfully";
$stmt->close();
Prepared statements help prevent SQL injection attacks by separating SQL logic from data. They're especially crucial when dealing with user-supplied data.
To deepen your understanding of PHP and MySQL integration, explore these related topics:
By mastering these concepts, you'll be well-equipped to build robust, database-driven PHP applications.