Вы не можете просто вставить его 5 раз. Вы также должны выполнить запрос 5 раз. Но это тоже не правильный способ сделать это. Вы должны выполнить запрос один раз и изменить LIMIT 0,1
на LIMIT 0,5
или просто LIMIT 5
. Затем переберите 5 случайных результатов в шаблоне smarty.
Вот как вы перебираете ассоциативный массив в smarty (он же CSS html штуковинный код):
http://www.smarty.net/docsv2/en/language.function.section.tpl
Редактировать
Хорошо, этот код выглядит не намного лучше. давайте разберемся с этим немного. Вы выполняете свой запрос в phpmyadmin или каком-либо другом инструменте, чтобы убедиться, что он возвращает то, что вы хотите? Сначала сделайте это, убедитесь, что запрос правильный.
Во-вторых, вы используете умный даже? Я только догадался, потому что это то, на что это было похоже.
В-третьих, убедитесь, что массив, который вы отправляете в smarty, правильно сформирован и содержит все необходимые данные. на стороне PHP сделайте print_r
перед тем, как назначить переменную.
Наконец, вот некоторый псевдокод, который расскажет вам, как это должно работать, если это действительно умно:
Run the query
Loop through the results, building an associative array of the data you want to send to smarty
(print it out and make sure its correct, for debugging purposes)
Assign the created array to a variable available to the smarty template
In the smarty template, use the section (loop) code and loop over the array of results to display it.