Workaround für max_user_connections fehler (HY000/1226)

Hier nur ein kleiner Beitrag wie man sich in kleines Workaround für den mysqli Fehler 1226 bauen kann und man nicht die max_user_connections verändern darf, kann oder ähnliches.

Ich habe z.B. ein etwas größeres Projekt bei dem ich nur 20 user_connections zur zeit verwenden darf. Dieses Limit ist bei über 1500 aktiven Usern am Tage schnell erreicht, weswegen ich schnell folgende Fehlermeldung erhielt:

Quellcode   
PHP Warning: mysqli::mysqli(): (HY000/1226): User 'USER' has exceeded the 'max_user_connections' resource (current value: 20)

Die Lösung des Problems war dann einfach diesen Fehler beim initialisieren des mysqli objects abzufangen und nach 3 Sekunden pause den User noch einmal an seine Zieladresse zu schicken.
Das mag nicht besonders grandios tun. Aber welches Workaround ist das schon.

Quellcode   
<?php
$_mysqli = new mysqli('localhost', 'USER', 'PASSWORD', 'TABLE');
if(mysql_errno() == 1203)  // 1203 == ER_TOO_MANY_USER_CONNECTIONS (mysqld_error.h)
{
  sleep(3);
  header('location: '.$_SERVER['PHP_SELF']);
}
?>

Bilder in der Datenbank speichern

Neben der Möglichkeit Bilder (oder generell Datein) auf dem Webserver zu speichern gibt es auch noch die Möglichkeit diese in der Datenbank zu speichern. Vor- und Nachteile dieser Möglichkeit und wie das ganze an einem Beispiel funktioniert erfahrt Ihr in diesem Artikel.

Bilder in der Datenbank speichern weiterlesen

Objektorientierte Datenbankklassen

Vorwort

Heute werde ich ein kleines Tuturial geben wie man sich unter PHP jede menge Arbeit ersparen kann mit Hilfe einer Datenbankzugriffsklasse.

Wer zu Faul zum lesen ist oder mir lieber beim erklären lauschen und zusehen will, kann sich diesen Beitrag natürlich auch einfach hier auf dem Video anschauen (zum Downloaden meines Quellcodes müsst ihr aber trotzdem ans Ende dieses Beitrags scrollen).

Um den von mir hier geschriebenen Quellcode zu verwenden, wird PHP 5 benötigt. Objektorientierte Datenbankklassen weiterlesen