Gelegentlich findet man in irgendwelchen Ordnern und auf Datenträgern alten Quellcode, den man in seiner Frühzeit als Entwickler geschrieben hat. Nicht selten, eigentlich immer, schämt man sich im Nachhinein für diese Zeilen voll Ressourcenverschwendung und ineffizienter und unsicherer Programmierung.
Gefunden habe ich jetzt diesen ausgesprochen performanten Codeausschnitt aus einem Projekt aus der Frühzeit meiner PHP-Kenntnisse, als ich gerade etwas MySQL gelernt hatte. Hier wird der Wert eines Eintrages ausgelesen, hochgezählt und wieder abgespeichert.
1$res = mysql_query("SELECT count from users WHERE id=" . $id);
2$data = mysql_fetch_object($res);
3$count = $data->count;
4$count++;
5mysql_query("UPDATE users SET count=" . $count . " WHERE id=" . $id);
Heute würde ich das natürlich so machen:
1mysql_query("UPDATE users SET count = count+1 WHERE id=" . $id);
(SQL-Injection. Ja, ja, aber darum geht es jetzt nicht)