dedlfix: sprintf und das %-Zeichen

Beitrag lesen

Tach!

Wie müsste es den richtig heißen, wenn ich eine Abfrage machen möchte aber kein exakten Typ angebe? Also weder string s noch integer d??

%s ist in jedem Fall richtig, wenn du die Zahlen nicht in irgendeiner Weise formatieren willst. PHP hat eine automatische Typumwandlung eingebaut, die im Falle von Zahlentypen zuschlägt. Außerdem kommen in $_POST sowieso nur Strings an.

$sql = sprintf("INSERT INTO kunde ( vorname, name, alter, strasse, ort, beschreibung)
VALUES ('%', '%', '%', '%', '%', '%')",
dann verschwinden die Kommata und er zeigt nur noch die ' an.

Das ist ja auch Unfug. Wie im PHP-Handbuch nachzulesen ist, ist der Type Specifier nicht optional. Der muss also vorhanden sein.

dedlfix.