[PHP]: Ошибка → Слишком мало аргументов в sprintf();
Эта строка дает ошибку: "Слишком мало аргументов". В чем проблема?
$InsertQuery = sprintf("INSERT INTO listing (ldate, places, company, designation, projectdetails, desiredcandidate, hrname, hrcontact, email) VALUES (DATE_FORMAT(%s,'%Y %m %d),%s,%s,%s,%s,%s,%s,%s,%s)", $ldate,$places,$company,$designation, htmlentities($projectdetails), htmlentities($desiredcandidate),$hrname,$hrcontact,$email);
Ответы
Ответ 1
Ну, ваша строка указывает 12 заполнителей, и вы предоставляете только 9 значений. Функция sprintf
требует, чтобы вы передавали столько значений, сколько количества заполнителей, которые вы указываете в строке формата. Я на самом деле думаю, что сообщение об ошибке поразительно ясно и примерно такое же сообщение об ошибке, какое вы когда-либо видели.
Ответ 2
Аргументы - это выражения, и они должны соответствовать числу спецификаторов формата%. Если вам действительно нужен% char, используйте %%.