PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (98): В начало « ... 64 65 66 67 [68] 69 70 71 72 ... » В конец

> Найдено сообщений: 1465
teddy Отправлено: 29 Июля, 2013 - 17:03:50 • Тема: Вопрос по объединению таблиц • Форум: Работа с СУБД

Ответов: 12
Просмотров: 2229
EuGen пишет:
Вам достаточно сделать JOIN, после чего правильно выводить данные в PHP

Запрос который вы написали отличается от моего только ORDER BY - его я тоже добавил но результат не изменился...

Можно подробнее про "правильный" вывод в PHP? Я сначала вывожу родительское меню а потом дочернее вроде бы все правильно... Или может вы имели ввиду что в php есть специальная функция для работы с массивами которая удаляет дубли? Если да, то подскажите пожалуйста, какая это функция

А не, про функцию я ляпнул...ведь mysqli возвращает объект
teddy Отправлено: 29 Июля, 2013 - 16:49:18 • Тема: Вопрос по объединению таблиц • Форум: Работа с СУБД

Ответов: 12
Просмотров: 2229
Здравствуйте. Не понимаю как себя ведет следующий SQL запрос:

PHP:
скопировать код в буфер обмена
  1. $result = $db->query("SELECT DISTINCT parentmenu.name, submenu.sub_name FROM parentmenu INNER JOIN submenu ON `submenu`.parentid = `parentmenu`.id") or die($db->error);
  2.        
  3.     while($row = $result->fetch_assoc())
  4.     {
  5.          echo $row['name']."<br />";
  6.          echo $row['sub_name'];
  7.        
  8.     }
  9.  

Тоесть я говорю в запросе, выбери мне родительское меню, дочернее меню(подменю) из таблицы, которое содержит родительское меню объединяя его с подменю на основе того, что родительский id у подменю, развен id у основного меню. Как то так.

Проблема в том, что родительское меню при выводе ДУБЛИРУЕТСЯ. Я же написал DISTINCT - а он должен прекращать дублирование. Скажите пожалуйста, почему так?

Должно выводиться так:

Фильмы
- Комедии
- Боевики

Спорт
- Плавание
- Смешанные бои

Но категории повторяются. получается так:

Фильмы
Комедии
Фильмы
Боевики

и т.д
teddy Отправлено: 29 Июля, 2013 - 13:21:24 • Тема: Не работает выборка с сессией • Форум: SQL и Архитектура БД

Ответов: 11
Просмотров: 151
PHP:
скопировать код в буфер обмена
  1. $query = mysql_query('SELECT `id` , `rono` , `nomsk` , `naims` , `adres` , `direk` , `telef` FROM `anketa` WHERE rono="$_SESSION[kod]"');
?
teddy Отправлено: 29 Июля, 2013 - 12:35:27 • Тема: Объясните пожалуйста ньюанс в использованни AJAX • Форум: Вопросы новичков

Ответов: 8
Просмотров: 313
DelphinPRO
Точно ) я просто аякс начал изучать на днях, он показался мне каким то особенным ) Да и когда изучал его, в материалах явно было указано POST что бы отправить данные, а GET что бы забрать. Из за этого я думал что придется писать POST запрос отдельно, а GET отдельно...

А тут вдруг я пишу POST, а данные почему то летят обратно.. Вот в чем была проблема ) Я просто не до конца понимал почему именно он работает )) Ну теперь уже вопросов нет ) Благодарю за внимание! в ближайшее время изменю вашу карму Язычок ))
teddy Отправлено: 29 Июля, 2013 - 12:15:26 • Тема: Объясните пожалуйста ньюанс в использованни AJAX • Форум: Вопросы новичков

Ответов: 8
Просмотров: 313
DelphinPRO пишет:
Сервер тебе отвечает? отвечает:

Отвечать так отвечает, но вот не было понятно, почему именно...

По поводу основного принципа: если допустим мы что то добавляем в БД(другая тема) и выводим, то нам нужен селект и инсерт. А не один инсерт который отдаст нам и селект автоматически, ведь так? Поэтому было не очень понятно )

EuGen
EuGen пишет:
Возможно, недопонимание состоит из-за использования метода POST.

Вы верно заметили, я даже намекнул на это в начале темы. Я просто думал что если не написать именно GET, сервер ничего не ответит а только обработает то, что ему прислали, например уложит данные в базу. Спасибо
teddy Отправлено: 29 Июля, 2013 - 01:46:06 • Тема: Объясните пожалуйста ньюанс в использованни AJAX • Форум: Вопросы новичков

Ответов: 8
Просмотров: 313
Здравствуйте. Не понимаю как работает скрипт, который описан ниже. После скрипта опишу то, что именно мне не понятно.

Клиент:
Спойлер (Отобразить)


Сервер:
Спойлер (Отобразить)

Как вы заметили, я отправляю AJAX запрос для обработки данных на сервере методом POST. Но как получается, что в то же время срабатывает GET и я получаю результат обработки данных сервером? Я же не писал в req.send что хочу получить данные и не указывал метод GET. Как получается, что данные все равно послушно выводятся в виде результата? Тоесть выводится не только ответ сервера по обработке того запроса, что я посылаю методом POST, но ещё и другой текст(Hello world), который выводится в серверном файле? Вот это не понимаю. Просьба помочь мне разобраться
teddy Отправлено: 28 Июля, 2013 - 14:23:58 • Тема: Помогите найти ошибку • Форум: Вопросы новичков

Ответов: 4
Просмотров: 143
Джек
нашел 3 ошибки, одну из которых вам подсказали выше.

Во первых у вас открывается тело цикла for, но не закрывается. Соответственно ошибка должна быть: unexpected $end

Цитата:
6.$q = mysql_query("SELECT * FROM tovar WHERE id=".$_SESSION['product_id'][$i]);
7.$query = mysql_query($q);

Какой смысл в этом? Улыбка 6-ой строки вполне достаточно было
teddy Отправлено: 27 Июля, 2013 - 16:44:57 • Тема: Платный доступ • Форум: Вопросы новичков

Ответов: 7
Просмотров: 532
dalek
Приблизительный алгоритм вы сами уже описали в теме топика. Если вам знакомы базовые конструкции языка PHP и вы хоть немного можете использовать БД в связке с PHP, то без проблем реализуете то, что вам нужно.

Если нет, то даже паблик вам вряд ли поможет т.к его все равно придется адаптировать под ваши нужды(поменять название колонок в БД и другие моменты в зависимости от реализации паблика и ваших нужд)

Врядли кто то напишет вам полноценный скрипт бесплатно или найдется паблик с волшебными настройками которые вам нужны. Все исходит от того, что те кто могут это реализовать состоявшиеся или почти состоявшиеся разработчики. А отсюда следует, что такие люди обычно очень ленивые или просто заняты, это факт Улыбка Ладно бы там был вопрос из разряда "Как сравнить ключ из БД в тем что ввел пользователь" - это одно, вам бы сразу ответили скорее всего.

Если у вас есть какие либо конкретные вопросы программного направления в реализации данного скрипта то лучше задайте их прямо - так гораздо проще будет понять в чем именно заключается ваша проблема.

П:С данным постом я не хотел никак задеть ваше мировозрение, а лишь объяснил более подробно то, что остальные пользователи хотели сказать выше.
teddy Отправлено: 27 Июля, 2013 - 13:45:12 • Тема: AJAX. Обращение к серверу только при изменении данных • Форум: Вопросы новичков

Ответов: 27
Просмотров: 1125
DelphinPRO
Да, но сервер я как поняли и без обращений пашет:
DeepVarvar пишет:
Листен канал сервера крутится в цикле

Или стоп... Может я не совсем правильно понял.

Вот итоговое заключение и поправьте плз кто нибудь если я ошибаюсь:
Цикл запускается только тогда, когда кто то "пнул" серверный файл и если кто то его "пнул", то запускается цикл и отдается ответ от сервера. Если уж не пнули, тогда цикл не запускается и сервер "отдыхает" <- так?
(Добавление)
Всё, тему можно закрыть. Мое непонимание некоторых моментов разрешаю списать на шею ошибок молодости ))
teddy Отправлено: 27 Июля, 2013 - 13:28:07 • Тема: AJAX. Обращение к серверу только при изменении данных • Форум: Вопросы новичков

Ответов: 27
Просмотров: 1125
DeepVarvar пишет:
Какой шмоп? Ёлкзлн ЫЕ!

Там реализация немного другая ) Я отписал для DelpinPRO про то что не понял из ссылки, не более ) Вот тут эти шмопы ) http://pastebin[dot]com/af8hF88J

DeepVarvar пишет:
Листен канал сервера крутится в цикле (как в примере по ссылке в моем первом сообщении в этом топике), но не более 20 секунд, и сплевывает данные клиенту только тогда, когда прошли 20 секунд чтобы клиент не закрыл соединение или когда на сервере произошло событие.

Да-да я понял идею, но проще я думаю тогда выставить интервал обращения к серверу каждые 20 сек через js и получится одно и тоже.. не? Без дополнительного усердствия
teddy Отправлено: 27 Июля, 2013 - 00:00:09 • Тема: AJAX. Обращение к серверу только при изменении данных • Форум: Вопросы новичков

Ответов: 27
Просмотров: 1125
DelphinPRO пишет:
Но еще есть иной подход - long polling

Спасибо за ссылку, прочитал, идею понял, только в том классе где описано как создать long polling не очень хорошо понял алгоритм, из за отсутствия практики в применении функций shmop_*
Надо будет попрактиковаться в их использовании, потом может применю этот вариант...

А точнее не понял определение понятия "разделяемая память" в описании shmop_* функций

LIME
Вау, комплименты Ха-ха

LIME пишет:
перво наперво как ты решишь кеширование на клиенте...и это верхушка айсберга

Кеширование я при получении данных аяксом запрещаю, потому что если этого не сделать, IE тупо закеширует первый ответ сервера и уже новые сообщения подгружаться не будут...

armancho7777777
Благодарю, наверное это самый оптимальный для меня вариант в данном случае. Вот только почему именно json? Я делаю приблизительно вот так:

Создаю один output файл, в который аяксом подгружаются данные из БД(из второго файла server.php) а потом просто вывожу эти данные при помощи obj.responseText;

В принципе здесь нет никаких сложных данных что бы использовать json, или обязательно json-ом? Насколько я знаю он нужен для сложных данных, что бы можно было удобно вывести данные в разных частях страницы типа $obj->value; или как то разделить при выводе полученный результат. А тут мне нужно вывести просто текст пришедший из БД в одну точку.

Я всем надоел?
teddy Отправлено: 26 Июля, 2013 - 19:54:25 • Тема: AJAX. Обращение к серверу только при изменении данных • Форум: Вопросы новичков

Ответов: 27
Просмотров: 1125
quinlena
Он не плох, только тут задача другая...

LIME
Честно говоря не очень понял... Вот у нас есть допустим записи в гостевой книге, которые берутся из БД.
Записи:

Вася:
Message: Hello, world!

Петя
Message: Hello, Vasya!

Мне нужно что бы новые записи появлялись без перезагрузки страницы. То есть если придет Коля и напишет Hello world, что бы Вася и Петя увидели это сообщение без перезагрузки страницы.

Задача такая: Общение между клиентом и сервером-> Клиент говорит Серверу: Я тебя не буду беспокоить, пока у тебя не появятся новые записи. Или наоборот, сервер говорит, я буду отдыхать и не отвечать на твои позывы, пока у меня не появятся новые записи. То есть не грузить сервак каждый раз setInterval - ом без необходимости.

Часть 2.
Поставлю вопрос по другому: Будет ли нормально, если я каждую секунду буду обращаться к серверу за проверкой данных и если они обновились, то выводить? Это работает, но меня интересует другое: Насколько это критично? Я тут вспомнил, что MySQL кеширует частые запросы - можно как то съехать на это и использовать вариант с setInterval() и обращаться к серверу каждую секунду? На случай если записей много - есть пагинация. Выводить к примеру не более 10 записей на страницу.

Особенно интересует ответ на вопрос, который описал в блоке под названием "Часть 2"
(Добавление)
LIME пишет:
возможно поможет чтение web-sockets(гуглить)

Спасибо ) не сразу увидел добавление

А кто нибудь может ответить по поводу того что я описал в Часть 2 в своем предыдущем посте? Очень интересно...

А про вебсокеты прочту обязательно
teddy Отправлено: 26 Июля, 2013 - 19:08:43 • Тема: AJAX. Обращение к серверу только при изменении данных • Форум: Вопросы новичков

Ответов: 27
Просмотров: 1125
quinlena
это JSON да ещё и в jQuery
teddy Отправлено: 26 Июля, 2013 - 19:02:18 • Тема: AJAX. Обращение к серверу только при изменении данных • Форум: Вопросы новичков

Ответов: 27
Просмотров: 1125
quinlena пишет:
Похожее делала. Обновление делается после создания записи. Сделал запись, после сразу обновление того, чего нужно. Делала с комментами и с письмами. По началу тоже setinterval использовала.

Я принцип понимаю, но реализацию не очень.

Кто нибудь может предложить вариант использования AJAX для таких задач? Вроде на многих крупных сайтах это реализовано. Так вот, как решить этот вопрос грамотно? Может кто подсказать примером то, как приблизительно это реализуется с минимальной нагрузкой на сервер?

Очень нужно
teddy Отправлено: 26 Июля, 2013 - 16:55:54 • Тема: Свернуть видео плеер? • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 880
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var video = document.createElement("IFRAME");
  3. var div = document.createElement('DIV');
  4. var p = document.createElement('P');
  5.  
  6. function startVideo()
  7. {
  8.     document.body.appendChild(div);
  9.     video.src = "http://www.youtube.com/watch?v=Hp1_AKj8-nU";
  10.     div.appendChild(video);
  11.     setTimeout('hideVideo()', 8000);
  12. }
  13.  
  14. function hideVideo()
  15. {
  16.     video.parentNode.removeChild(video);
  17.     div.parentNode.removeChild(div);
  18.        
  19.     p.innerHTML = "Текст, который хотим показать после сворачивания видео";
  20.     document.body.appendChild(p);
  21. }
  22.  
  23. window.onload = function()
  24. {
  25.  
  26.     setTimeout('startVideo()', 3000);
  27.  
  28. }
  29.  


Примечание:Тестил в IE 9 и в Хроме. В IE при исчезновении видео страница отображается некорректно, а вот в хроме всё хорошо работает. Дорабатывайте под свои нужды, измените место вывода текста, цвет и т.д если вам нужно...

Как то так

Страниц (98): В начало « ... 64 65 66 67 [68] 69 70 71 72 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB