<MyRusakov.ru />

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Видеокурс "Фреймворк Yii 2.0 с нуля. Пример создания сайта" обучит Вас созданию профессиональных сайтов с использованием фреймворка Yii. В курсе есть 2 раздела: теоретический и практический. В теоретическом разделе будут разобраны возможности фреймворка Yii с примерами их использования, а в практической части будет создан сайт Blog.MyRusakov.ru с помощью полученных знаний из теоретического раздела.

Так же почти ко всем урокам идут упражнения для закрепления материала из урока на практике.

После прохождения курса Вы без труда сможете создавать любые сайты с использованием фреймворка Yii, причём делать это будете быстро и качественно.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Как правильно записать значения чекбоксов
16.11.2011 20:47:04 Как правильно записать значения чекбоксов Сообщение #1
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Вообще насколько я понял насчёт перебора - in_array(Искомое значение в массиве, сам массив)
Получается, что нужно для цикла while($ids).
Далее получается идёт in_array($ids, $row1['name'])
Так ведь?
У меня идёт работа с 2 таблицами.
1 - это таблица, где идут 2 столбца. Один столбец на айди, а второй на строчное значение. Получается, что у каждого стиля есть свой айди.
2 - это данные пользователя, куда в столбец likes записывается строка, сделанная при помощи implode() из айди 1 таблицы. Строка примерно так выглядит: 76,84,85,89,91,94,96,101,106,110
После конечно на странице пользователя она снова разбирается на массив с помощью explode()
Далее вот начинается моя проблема.
Получается мы создаём while(тут значение $ids = explode(',', $row2['likes']))
далее идёт if (in_array(и получается тут у нас сколько вообще значений должно быть?))
Вот самы функция in_array не понятна.
Профиль Ответить
16.11.2011 20:59:08 Как правильно записать значения чекбоксов Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

1 - это таблица, где идут 2 столбца. Один столбец на айди, а второй на строчное значение. Получается, что у каждого стиля есть свой айди.

Именно это и нужно перебирать. А внутри цикла проверять, есть ли id (в текущей итерации) в массиве ids (это проверка через функцию in_array()).
Профиль Ответить
16.11.2011 21:07:54 Как правильно записать значения чекбоксов Сообщение #3
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Уже пробовал ставить разными способами, ничего не работает...
<?php
$dbconnect = mysqli_connect('localhost', 'root','' ,'testing') or die('eRROR!!!!');
$query1 = "SELECT * FROM styles";
$query2 = "SELECT * FROM user WHERE id = '1'";
$mq1 = mysqli_query($dbconnect, $query1);
$mq2 = mysqli_query($dbconnect, $query2);
$row1 = mysqli_fetch_array($mq1);
$row2 = mysqli_fetch_array($mq2);
$ids = explode(',', $row2['likes']);
while($row1) {
if (in_array($ids, $row1['id'])) {
echo '11';
}
}
?>

Ведь так получается надо было сделать?
Профиль Ответить
16.11.2011 21:17:34 Как правильно записать значения чекбоксов Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Почитайте про циклы в программировании. Узнайте про циклы for, while и do while. Посмотрите их синтаксис, примеры и прочее.
Профиль Ответить
16.11.2011 22:49:25 Как правильно записать значения чекбоксов Сообщение #5
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Михаил, вот посидел подумал, написал, вроде работает, но скажите, вот такой код что ли должен быть?
<?php
$dbconnect = mysqli_connect('localhost', 'root','' ,'testing') or die('eRROR!!!!');
$query1 = "SELECT * FROM styles";
$query2 = "SELECT * FROM user WHERE id = '1'";
$mq1 = mysqli_query($dbconnect, $query1);
$mq2 = mysqli_query($dbconnect, $query2);
$row1 = mysqli_fetch_array($mq1);
$row2 = mysqli_fetch_array($mq2);
$ids = explode(',', $row2['likes']);
while($row1 = mysqli_fetch_array($mq1)) {
if (in_array($row1['id'] ,$ids))
echo $row1['name'] . '<br />';
}
?>
Профиль Ответить
16.11.2011 22:52:14 Как правильно записать значения чекбоксов Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Да, это действительно то, о чём я и говорил.
Профиль Ответить
16.11.2011 22:55:17 Как правильно записать значения чекбоксов Сообщение #7
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Мда, надо было просто очень хорошо мозг напряч)))
Михаил, а возможно теперь данные из цикла запихнуть в массив? Просто выводить хочется в виде строки и формировать её при помощи implode()
Профиль Ответить
16.11.2011 22:58:02 Как правильно записать значения чекбоксов Сообщение #8
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Можно. Просто записывайте все названия в новый массив. А переменную для ключа массива увеличивайте при попадании в if.
На выходе получится готовый массив со всеми названиями стилей, которые были в поле like.
Профиль Ответить
16.11.2011 23:06:47 Как правильно записать значения чекбоксов Сообщение #9
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Михаил, ну вот по идее как то так это выглядеть должно, только вот в массиве почему то только первые буквы и ключи, и всё, что не так?
<?php
$dbconnect = mysqli_connect('localhost', 'root','' ,'testing') or die('eRROR!!!!');
$query1 = "SELECT * FROM styles";
$query2 = "SELECT * FROM user WHERE id = '1'";
$mq1 = mysqli_query($dbconnect, $query1);
$mq2 = mysqli_query($dbconnect, $query2);
$row2 = mysqli_fetch_array($mq2);
$ids = explode(',', $row2['likes']);
while($row1 = mysqli_fetch_array($mq1)) {
if (in_array($row1['id'] ,$ids))
$mmm[] = $row1['name'][0];
}
print_r($mmm);
?>
Профиль Ответить
16.11.2011 23:08:33 Как правильно записать значения чекбоксов Сообщение #10
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Извиняюсь, решил проблему)))) Изменил на $mmm[] = $row1['name'];
Профиль Ответить