Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Конкатенация строк с использованием sprintf();
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » Конкатенация строк с использованием sprintf();

Страниц (1): [1]
 

1. welcometo - 25 Июня, 2011 - 15:09:17 - перейти к сообщению
Здравствуйте, как можно сделать конкатенацию строк, используя функцию sprintf ?
делаю так, не работает
PHP:
скопировать код в буфер обмена
  1. $Query = '';
  2. for ($x=0; $x < $optionsCount; $x++)
  3. {
  4.      $Query.= sprintf("INSERT INTO variants VALUES ('', %s, %s);",  $questionID,  quote_smart($optionsArray[$x]));
  5. }
  6. $Result = mysql_query($Query);      
2. Мелкий - 25 Июня, 2011 - 15:22:00 - перейти к сообщению
Работает.
Сделайте var_dump($Query); и увидите.

А вот mysql_query выполняет только 1 SQL-команду за вызов, все дальнейшие игнорируются.
Используйте мультивставку insert'a
PHP:
скопировать код в буфер обмена
  1. $query=array();
  2. for ($x=0; $x < $optionsCount; $x++) {
  3. $query[] = "('',".$questionID.",".quote_smart($optionsArray[$x]).")";
  4. }
  5. if (!empty($query)) {
  6. mysql_query('INSERT INTO variants VALUES '.implode(',',$query));
  7. }
3. welcometo - 25 Июня, 2011 - 15:29:27 - перейти к сообщению
Спасибо большое, красивый код

 

Powered by ExBB FM 1.0 RC1