Added a new method for executing prepared SQL statements to prevent SQL injection.
Replaced the deprecated utf8_encode function with mb_convert_encoding for better character encoding conversion.
Implemented mysqli_real_escape_string for secure string escaping in SQL queries.
Im Rahmen des Projektes WISY@KI sind wir beauftragt Rücksicht auf die Sicherheit der in dem Projekt neu entwickelten Systeme zu nehmen. Ein wichtiger Schritt dahin ist die Minimierung von Anfälligkeiten gegenüber SQL-Injections. Ich würde gerne hiermit vorschlagen den Sql-Wrapper DB_Admin um Funktionen zu Erweitern, die die Ausführung von prepared Statements erlauben. Zudem soll die Methode escape, die unter der Haube mysqli_real_escape_string nutzt, als Ersatz für die im gesamten WISY-Code häufig aber nicht ausreichend sichere Methode addslashes dienen.
Zudem wird die seit PHP 8.2 veraltete Methode utf8_encode durch mb_convert_encoding ersetzt.
Ich bitte um Prüfung des vorgeschlagenen Codes und freue mich über Rückmeldung zur Möglichkeit der Ergänzung derartiger Funktionen.
Anwendungsbeispiel:
$db = DB_Admin();
$sql = "SELECT beschreibung FROM kurse WHERE titel=? AND freigeschaltet=?";
$params = array('Geprüfte/r Industriefachwirt/in', 1);
$types = 'si'; // Optional. Wenn null, dann automatisch anhand von $params Inhalt bestimmt.
$results = $db->execute($sql, $params, $types, true);
while ($db->next_record()) {
echo($db->f8('beschreibung'))
}
Features:
Implemented mysqli_real_escape_string for secure string escaping in SQL queries.
Im Rahmen des Projektes WISY@KI sind wir beauftragt Rücksicht auf die Sicherheit der in dem Projekt neu entwickelten Systeme zu nehmen. Ein wichtiger Schritt dahin ist die Minimierung von Anfälligkeiten gegenüber SQL-Injections. Ich würde gerne hiermit vorschlagen den Sql-Wrapper DB_Admin um Funktionen zu Erweitern, die die Ausführung von prepared Statements erlauben. Zudem soll die Methode escape, die unter der Haube mysqli_real_escape_string nutzt, als Ersatz für die im gesamten WISY-Code häufig aber nicht ausreichend sichere Methode addslashes dienen. Zudem wird die seit PHP 8.2 veraltete Methode utf8_encode durch mb_convert_encoding ersetzt.
Ich bitte um Prüfung des vorgeschlagenen Codes und freue mich über Rückmeldung zur Möglichkeit der Ergänzung derartiger Funktionen.
Anwendungsbeispiel: