#php
Есть скрипт, который заполняет базу данных данными, взятыми из массива. Сейчас данные с массива, добавляются случайно, как можно изменить скрипт чтобы данные добавлялись последовательно (Один, Два, Три,..,.., Один, Два,.......)? Php: if(100==100){ $rowsToCreate = 30; $name = array("Один", "Два", "Три", "Четыре", "Пять"); $text = array("Текст 1", "Текст 2", "Текст 3", "Текст 4", "Текст 5"); do { $name2 = $name[array_rand($name)]; $text2 = $text[array_rand($text)]; $data = "INSERT INTO `blog` (id, name, text) VALUES (NULL, '".$name2."', ' ".$text2."' ) "; $Result = mysql_query($data); $rowsToCreate--; } while ($rowsToCreate>=1); if ($Result) { echo "Информация добавлена!!
"; }else{ echo "Увы, но информация не добавлена!!
"; } } Бд: CREATE TABLE IF NOT EXISTS `blog` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL, `text` varchar(100) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Ответы
Ответ 1
Вот так подойдет? $inArrayCnt = 0; // здесь будем хранить порядковый номер записи из массива do { $name2 = $name[$inArrayCnt]; $text2 = $text[$inArrayCnt]; $data = "INSERT INTO `blog` (id, name, text) VALUES (NULL, '".$name2."', ' ".$text2."' ) "; $Result = mysql_query($data); $rowsToCreate--; $inArrayCnt++; // увеличиваем порядковы номер if ($inArrayCnt==Count($name)) $inArrayCnt=0; // если новый номер последний - обнуляем счетчик } while ($rowsToCreate>=1);
Комментариев нет:
Отправить комментарий