lib/database.php
Klasse in Deine Projektstruktur einbinden
/**
* Simple Database class for PHP7+
* The class contains main functions for your database. For a detailed documentation, see: https://oop.creative-it.org/
* created 01.06.2019
*
* @author JH
*/
class Database {
private $host, $database, $username, $password, $connection;
private $port = 3306;
/**
*
* Sets the connection credentials to connection to your database
*
* @param string $host - the host of your database
* @param string $username - the username of your database
* @param string $password - the password of your database
* @param string $database - your database name
* @param integer $port - the port of your database
* @param boolean $autoconnect - to auto connect to the database after settings connection credentials
*/
function __construct($host, $username, $password, $database, $port = 3306, $autoconnect = true) {
$this->host = $host;
$this->database = $database;
$this->username = $username;
$this->password = $password;
$this->port = $port;
if($autoconnect) {
$this->open();
}
}
/**
*
* Open the connection to your database
*/
function open() {
$this->connection = new mysqli($this->host, $this->username, $this->password, $this->database, $this->port);
}
/**
*
* Close the connection to your database
*/
function close() {
$this->connection->close();
}
/**
*
* Execute your query
*
* @param string $query - your sql query
* @return the result of the executed query
*/
function query($query) {
return $this->connection->query($query);
}
/**
*
* Escape your parameter
*
* @param string $string - your parameter to escape
* @return the escaped string
*/
function escape($string) {
return $this->connection->escape_string($query);
}
}
index.php
Datenbank Klasse einbinden und eine Instanz erstellen
require_once("lib/database.php");
$database = new Database("localhost", "testuser", "verySafePassword", "ourDatabase");
Parameter maskieren um SQL-Injections vorzubeugen.
$parameter = $_POST["id"]; // Übergabe per POST-Request
$parameter = $database->escape($parameter); // Maskierung
$query = "SELECT * FROM tbl_titleFiles WHERE id = 1";
$result = $database->query($query);
while($row = mysqli_fetch_assoc($result)) {
echo "<strong>Datei: </strong>" . $row["file"] . "<strong> Titel: </strong>" . $row["title"] . "<strong> Ordner: </strong>" . $row["folder"] . "<br>";
}
close()-Funktion aufrufen, um geöffnete Datenbankverbindungen zu schließen.
$database->close();