Zitat Zitat
Ist das Problem an den [global]s jetzt nur die Sicherheit, in Form von „hier globalisieren wird und schmeißen die Variable einfach mal so in den mysql_query“ oder hat das noch tiefere Gründe?
Ein großer Nachteil von global ist meiner Meinung nach, dass sich die globalisierten Variablen zu schnell wieder ändern können. Änderst du eine Variable, musst du sie auch x-Mal innerhalb deiner Funktion ändern, wo du welche übersehen könntest.
Wie dead_orc sagte, wären Paramenterwerte hier besser geeignet.
Aber eventuell interessiert dich auch der Geltungsbereich von Variablen.

Da es dir um die Sicherheit geht: Ob du nun einen Parameterwert oder eine globale Variable unbearbeitet in den SQL String einfügst ist identisch unsicher.

Zitat Zitat
Ich befolge da in der Regel folgenden Rat gegen [SQL Injection].
Gibt es da noch etwas hinzuzufügen oder kann ich das als „extrem“ sicher im Raum stehen lassen?
"Extrem sicher" ist ein Begriff, den man eigentlich nicht verwenden kann. Wenn du alles machst, um die guten von den schlechten zu unterscheiden kannst du aber von guter Verteidigung sprechen.