<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру 3.0

PHP и MySQL с Нуля до Гуру 3.0

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 9 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

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

В Бонусе «Создание сайта для библиотеки» Вы увидите применение знаний из основного курса при создании полноценного проекта.

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

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

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

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

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

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

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

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

Зачем Вы изучаете программирование/создание сайтов?

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

обработка массива
03.10.2012 17:15:33 обработка массива Сообщение #1
Alnik-75

Alnik-75

Продвинутый

Продвинутый

Дата регистрации:
07.02.2012 11:45:49

Сообщений: 48

Подскажите какой цикл, обрабатывая массив, работает быстрее?while или foreach?
Профиль
03.10.2012 19:32:48 обработка массива Сообщение #2
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

while - цикл можно сказать универсальный,он умеет почти всё...А foreach более сложный который чаще всего используется для перебора,пересчёта и т.д.

А на счёт скорости то мне кажется они одинаковые...А друг говорит что самый быстрый цикл это - for ...Так что думайте сами...

Я вам выразил свои мысли...а более подробно вам расскажет - Михаил...
Профиль
03.10.2012 20:50:37 обработка массива Сообщение #3
Admin

Admin

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

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

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

Сообщений: 3063

Всё правильно, нет разницы по скорости. Если бы и была, то принципиально неощутимая.
Профиль
03.10.2012 21:07:54 обработка массива Сообщение #4
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

Михаил, помогите пожалуйста,у меня в бызе есть поле с rand() туда вводится число,и мне нужно сделать так чтобы сравнивалось id и поле rand() на соответствие,и чтобы в адресной строке было напрмиер

http://test.ya/get.php?id=rand() ,

всмысле

http://test.ya/get.php?id=34564565673567

как так сделать...мне очень надо...честное слово,только покажите в примере...

Объясню ещё раз...

Мне нужно чтобы в адресную строку заносилось id равное полю rand()
Профиль
03.10.2012 21:29:17 обработка массива Сообщение #5
Admin

Admin

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

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

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

Сообщений: 3063

Вам надо пользователя заставить перейти по нужной ссылке с подставленным в неё rand(). Или редиректом тогда. А сама ссылка так и собирается по запросу из базы.
Профиль
03.10.2012 21:41:33 обработка массива Сообщение #6
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

Я посылаю запрос


$result = $mysqli->query("SELECT id,title,description,date,random FROM news";
while($news = $result->fetch_assoc()) {
echo<<<TXT
$news[title]
$news[description]
$news[date]
<a href = "index.php?id=$news[random]">Подробнее</a>
TXT;
}


И принимаю запрос,но получается пустой экран...

$random = $_GET['random'];
$result = $mysqli->query("SELECT * FROM news WHERE id='$random'";
while($get = $result->fetch_assoc()) {
echo<<<TXT
$get[id]<br>
$get[title]<br>
$get[description]<br>
$get[text]<br>
TXT;
}


Что у меня не так...я уже голову сломал
Профиль
04.10.2012 20:42:10 обработка массива Сообщение #7
Admin

Admin

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

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

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

Сообщений: 3063

Может запрос из базы ничего и не возвращает.
Профиль
04.10.2012 20:59:23 обработка массива Сообщение #8
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

Без понятия...в базе всё есть,но при обращении бедый экран...что не так?

И ошибок никаких не выводит...

но по логике это не реально,потому что id не равно этому числу...но мне это сделать надо...А как такое сделать не понимаю...

А вы у себя пробовали скрипт тестировать?
Профиль
04.10.2012 21:21:54 обработка массива Сообщение #9
Admin

Admin

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

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

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

Сообщений: 3063

У меня всё равно нет Ващей базы. Попробуйте как обычно, вручную выполнять запрос через phpmyadmin во вкладке SQL. Может быть запрос действительно не работает так, как Вы хотели.
Профиль
04.10.2012 21:32:36 обработка массива Сообщение #10
malina95

malina95

Мастер

Мастер

Дата регистрации:
15.07.2012 07:13:44

Сообщений: 208

пробовал я там,всё нормально...

А вы поможете разобраться если я дам базу?Прошу помогите...у меня уже голова пухнет...


CREATE TABLE `news` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL,
`description` text NOT NULL,
`text` text NOT NULL,
`date` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`secret` int(1) NOT NULL default '0',
`random` varchar(255) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=58 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=58 ;

--
-- Дамп данных таблицы `news`
--

INSERT INTO `news` VALUES (1, 'Как убрать рамку у текстового поля в браузерах Опера,Хром и Мозилла', 'В этой статье будет описываться метод - который уберёт случайную рамку у браузеров...\r\n\r\nИ так начнём...', 'В этой статье будет описываться метод - который уберёт случайную рамку у браузеров...\r\n\r\nИ так начнём...\r\n\r\nДля начала советую вам заглянуть в справочник CSS по адресу - <a href = "http://css.manual.ru/" title = "CSS Справочник Онлайн" target = "_blank">http://css.manual.ru/</a>\r\nЕсли вы зашли на этот сайт то идём дальше...\r\n\r\nНайдите в справочнике свойство "outline" Нашли?\r\n\r\nНу теперь объяснять дальше не буду...так как вам и так всё стало понятно...просто поставьте "0" и всё,выглядеть код будет следующим образом\r\n\r\n<code class = "code">\r\noutline : 0;\r\n</code>\r\n\r\nА если вы уже вставили это свойство в свои стили то у вас должно быть примерно такое :\r\n\r\n<code class = "code">\r\ntextarea, input {\r\n outline : 0;\r\n color : #ccc;\r\n}\r\n</code>', '2012-10-04 16:33:34', 0, '4987439120');
INSERT INTO `news` VALUES (2, 'ggggggg', 'gggggggggg', 'ggggggggggggggggggggggggggg', '2012-10-02 22:00:27', 0, '96608062');
INSERT INTO `news` VALUES (3, 'gggggg', 'ggggggggggggg', 'ggggggggggggggggggggggggggggggggggg', '2012-10-02 22:00:35', 0, '498739120');
INSERT INTO `news` VALUES (5, 'икловыпа', 'ваып', 'ваыаааааааааааааааааааааааааааввввввввввввввввв', '2012-10-03 15:00:43', 0, '218761525');
INSERT INTO `news` VALUES (6, 'икловыпа', 'ваып', 'ваыаааааааааааааааааааааааааааввввввввввввввввв', '2012-10-03 15:09:10', 0, '958138322');



вот вся таблица...в базе она одна
Профиль