Nixwisser: mysql textfeld als 'text' deklariert?

Beitrag lesen

is_numeric kommt wohl mit dem wert nicht klar und lässt die '' weg. ohne die '' gehts nicht.

Nein, is_numeric() macht genau das, was Du möchtest: Es erkennt eine Ziffernkette (das ist der Unterschied zu is_int(), is_numeric() erkennt auch als Text dargestellte Zahlen), woraufhin die Anführungszeichen weggelassen werden und statt eines Textes eine Zahl im SQL-Befehl auftaucht. Für MySQL ist diese Zahl zu groß, so dass es stattdessen den maximal möglichen Wert in die Datenbank schreibt.

PS: Ein Ersetzen von is_numeric() durch is_int() bringt nichts, da aus Formulardaten ausschließlich Textvariablen entspringen, keine Zahlvariablen.