Hallo Bernd,
jeder mysqli-Aufruf, bei dem in der Doku steht, dass er im Fehlerfall einen speziellen Wert liefert, kann auch auf einen Fehler laufen. Ob Du sinnvoll aus dem Fehler herauskannst, oder nur loggen und abbrechen, ist natürlich eine andere Frage.
Also: Prepare, Bind und Execute müssen allesamt überprüft werden.
Um deinen Code übersichtlicher zu machen, könntest Du das Befüllen der gebundenen Variablen vorziehen (a_lager bis a_was). Wenn Du den Insert etwas änderst, so dass a_code als letztes in der Column-Liste steht (das geht, auch wenn die Table ein anderes Layout hat), dann sollten auch beide Parameter-Binds identisch sein und du brauchst den Bind nicht zu doppeln.
Rolf
--
sumpsi - posui - clusi
sumpsi - posui - clusi