PHP.SU

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

Страниц (59): В начало « ... 38 39 40 41 [42] 43 44 45 46 ... » В конец

> Найдено сообщений: 881
Vladimir Kheifets Отправлено: 27 Июля, 2018 - 14:48:43 • Тема: Как правильно получить данные из четырех таблиц из базы данных mysql, с помощью php+ajax • Форум: Работа с СУБД

Ответов: 1
Просмотров: 429
beki007 пишет:
Есть 4 таблицы в базе: person(id, name, lastname), city(id, title), transport(id, title, price, date), hotel(id, title, price).
Имеется html форма:

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


и содержимое script.php:
Спойлер (Отобразить)

Вот тут в php надо сделать так: вывести данные из таблиц, соответствующий данным из формы поиска, потом суммировать price из таблицы transport + price из таблицы hotel. И вывести на таблицу.
Как можно реализовать? Помогите пожалуйста.
Заранее благодарен за помощь
Добрый день!
Допустим, что есть 4 таблицы в базе: person(id, name, lastname), city(id, title), transport(id, title, price, date), hotel(id, title, price)
Спойлер (Отобразить)
Можно попробовать сделать запрос:
Спойлер (Отобразить)
Результат
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 25 Июля, 2018 - 08:24:06 • Тема: Помогите правильно составить запрос к БД • Форум: Вопросы новичков

Ответов: 2
Просмотров: 120
elikmhs пишет:
Допустим в базе есть таблица Сотрудники с полями имя, возраст и пол.
Требуется создать таблицу в цикле так чтобы каждое имя отображалась один раз а рядов вывести количество сотрудников с таким именем.

Таблица в БД

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

Требуется вывести
CODE (html):
скопировать код в буфер обмена
  1. <table width="500" border="1" cellspacing="0" cellpadding="10">
  2.   <tr>
  3.     <td>ИМЯ</td>
  4.     <td>КОЛ. СОТРУДНИКОВ</td>
  5.   </tr>
  6.   <tr>
  7.     <td>Иван</td>
  8.     <td>2 </td>
  9.   </tr>
  10.   <tr>
  11.     <td>Олег</td>
  12.     <td>3 </td>
  13.   </tr>
  14.   <tr>
  15.     <td>Инна</td>
  16.     <td>1 </td>
  17.   </tr>
  18. </table>


Моя попытка
Спойлер (Отобразить)

Помогите дописать или может есть решения по проще ?


Добрый день!
Я бы в начале выбрал все имена из БД с сортировкой по имени, а потом сделал бы массис для печати.
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 24 Июля, 2018 - 20:11:22 • Тема: Синтаксическая ошибка, хотя ошибки вроде бы и нет. • Форум: Вопросы новичков

Ответов: 2
Просмотров: 137
serzh пишет:
Здравствуйте!
Первые проверочные страницы сайта на Денвере. При попытке просмотреть первую страницу браузер выдал такую ошибку:

Ошибка разбора: синтаксическая ошибка, неожиданный '<в R:\home\localhost\www\zs\index.в PHP на линии 2

Вот код индексной страницы:
Спойлер (Отобразить)


Во второй строке только ДОКТАЙП и больше ничего. Никакой лишней скобки НЕТ. В чём же ошибка?

Добрый день!
После <?php должен быть PHP-код, а у Вас HTML.
Вообще-то с <?php include ("bloks/header.txt");?> и <?php include ("bloks/nav.txt");?>
тоже не очень понято.
Удачи!
Vladimir Kheifets Отправлено: 24 Июля, 2018 - 13:19:16 • Тема: Удаление отдельной позиции из БД • Форум: Вопросы новичков

Ответов: 2
Просмотров: 176
7erj пишет:
Доброй ночи! Подскажите, пожалуйста, как выйти из сложившейся ситуации.

Есть запрос в бд, который через foreach выводит список позиций из базы данных.
Прикрепляю скрин, на котором есть 2 позиции. Напротив каждой позиции есть кнопка "изменить".
Каким образом я могу осуществить такую функцию?

Проблема в том, что я пытаюсь обрабатывать полученные через post данные, которые находятся в цикле foreach. И поэтому в самом обработчике я ловлю только последнюю, из перечисленных, запись. Огорчение

А надо что бы я мог ловить в обработчике те данные, напротив которых я нажал кнопку "изменить".

Добрый день!
1. Советую Вам убрать кнопки "Изменить" из строк и поставить внизу только одну кнопку.
Выбор строк для изменение и удаления делать через чекбоксы.
2.Имена полей формы нужно дополнить символами [], например, name="ch[]"
Может это Вам поможет:
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 21 Июля, 2018 - 09:31:37 • Тема: Cookie • Форум: Вопросы новичков

Ответов: 2
Просмотров: 176
masterlelik пишет:
Столкнулся с необъяснимой проблемой:
если устанавливать куке конкретное статическое значение, то все ок, а если через переменную, то кука не устанавливается
Вот так работает:
$time=time()+60*60*24*3;
setcookie("banner", 177, $time, "/", $_SERVER["HTTP_HOST"]);

А вот так уже не работает
$id=180;
setcookie("banner", $id, $time, "/", $_SERVER["HTTP_HOST"]);

Если во второй строке $id заменю на само число, то кука станет=180

В чем может быть причина?

Добрый день!
И так и так работает. Вам необходимо вставит error_reporting(E_ALL); и Вы увидите почему не работает.
так работает
Спойлер (Отобразить)
а так нет(из-за пробела перед <?)
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 20 Июля, 2018 - 11:00:43 • Тема: Бронирование номера в отеле • Форум: Работа с СУБД

Ответов: 4
Просмотров: 860
jovani пишет:
Доброе время суток всем!
Друзья дорогие и у меня вот какой вопрос. Пишу сайт для туристического агентства, в котором должна быть возможность бронирование номера в отелях. Если бы бронирование было только с этого сайта, который пишу, я с могу осуществить схему бронирование, но кроме моего сайта номера в отеле могут бронировать все, кто этого пожелает. Мой вопрос в следующем: подскажите пожалуйста советом, как делается бронирование в случае если бронировать могут люди из разных точек мира. Как устроена эта связь.
Заранее всем спасибо

Добрый день!
1. В начале, Ваш заказчик должен принять решение с какой системой он хочет работать.
Таких систем много и выбор сделать не просто.
Как правило, такие системы предоставляют доступ к бронированию для менеджеров турфирм.
Перед тем как подписывать договор на использование API, бронируют отели в ручную и обращают внимание на покрытие
(страны, города и количество отелей) и цены и условия оплаты – депозит, оплата по кредитным картам, оплата на дату заезда.

2. Если система представляет интерес то турфирма заключает договор на использование API и на этом этапе Вы засвечиваетесь как разработчик интерфейса.
После заключения договора Вы получите доступ к песочнице и базе данных.
Как правило это, таблицы городов, стран и информации об отелях. Эти данные должны загружаться в клиентскую
БД и регулярно актуализироваться.Разумеется Вы получаете доступ документации.

3. Вам необходимо написать селекторы для ввода поисковых запросов. Например, требуется выбрать город, даты, количество комнат и персон.
Пишите программу отправляющую запрос Вебсервису и обрабатывающую полученный ответ.
Далее выводите информацию для посетителя сайта и он выбирает отель, который хочет забронировать.
Затем посылаете запрос на бронирование и интерпретируете ответ – статус бронирования (подтверждён, отклонён, под запросом)
Генерируете ваучеры и отправляете клиенту подтверждение. Если бронирование со статусом “под запросом” необходимо реализовать
асинхронные запросы для получения статус бронирования.

4. Пишите запросы на получение информации о прошедших заказах и зпросы для их отмены.

5.Когда Вы закончите разработку интерфейса в песочнице, запускается процедура сертификации Вашего программного продукта.
После завершения сертификации Ваш заказчик получит доступ к сервису, а Вы если повезёт, оговоренный гонорар за выполненную работу.

Пример реализации системы бронирования отелей, трансферов и экскурсий можете посмотреть здесь https://www[dot]alto-booking[dot]com/test/

Пример HotelSearchResponse
Спойлер (Отобразить)

Пример GetHotelDetailResponse
Спойлер (Отобразить)
Vladimir Kheifets Отправлено: 17 Июля, 2018 - 12:00:58 • Тема: Почему в режиме $strict in_array не верную кодировку? • Форум: Вопросы новичков

Ответов: 8
Просмотров: 490
Doox911 пишет:
Делаю вот такую проверку:
PHP:
скопировать код в буфер обмена
  1.  
  2.     public static function CheckRussianLanguage ( $string ) {
  3.         $alfavit = array (' ','А','а','Б','б','В','в','Г','г','Д','д','Е','е','Ё',
  4.                          'ё','Ж','ж','З','з','И','и','Й','й','К','к','Л','л','М','м',
  5.                          'Н','н','О','о','П','п','Р','р','С','с','Т','т','У','у','Ф',
  6.                          'ф','Х','х','Ц','ц','Ч','ч','Ш','ш','Щ','щ','Ъ','ъ','Ы','ы',
  7.                          'Ь','ь','Э','э','Ю','ю','Я','я','0','1','2','3','4','5','6','7','8','9');
  8.         $dlinna_str = strlen ( $string );
  9.         $clear_string = '';
  10.         for ( $count = 0; $count<$dlinna_str; $count++ ) {
  11.             var_dump($string[$count]);
  12.            
  13.             $check = in_array ( $string[$count], $alfavit, true );
  14.             if ( $check ) {
  15.                 $clear_string .= $string[$count];
  16.             }
  17.         }
  18.         $clear_string = preg_replace ( "/ {1,}/", " ", $clear_string );
  19.         return $clear_string;
  20.     }
  21.  


При не строгом режиме пропускает всё. В чём может быть причина?
Вывожу var_dump

string(1) "�"
string(1) "�"
string(1) "�"
string(1) "�"
string(1) "�"
string(1) "�"
string(0) ""

Добрый день!
Причина в том, Вы выбираете по одному байту, а для каждый символа кириллицы в UTF-8 нужно выбирать по 2 байта и для строки "АаБбВв" strlen выдаёт значение 12, а не 6.
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 13 Июля, 2018 - 09:00:19 • Тема: Передать данные формы по API в CRM • Форум: Вопросы новичков

Ответов: 1
Просмотров: 310
CyberM пишет:
Имеется сайт на WordPress где используется плагин конструктор форм FormCraft. Нужно чтобы данные из этих форм передавались по API в CRM U-ON.Travel.

В FormCraft есть такая функция - Send Data to Custom URL - https://formcraft-wp[dot]com/help/se[dot][dot][dot]a-to-custom-url/ , там можно в опциях формы прописать адрес, например http://example[dot]com/handler.php - с таким кодом:



В результате его работы, в той же папке сайта, получается файл с именем test.txt в который переданы данные формы с такими данными, как: {"Entry_ID":"360","Name":"Jack Brown","Age":"32"}

А в документации по API U-ON.Travel - http://api[dot]u-on[dot]ru/doc - предлагается такой способ интеграции и пример кода:

PHP:
скопировать код в буфер обмена
  1. $curl = curl_init();
  2. CURLOPT_RETURNTRANSFER => true,
  3. CURLOPT_URL =>
  4. 'https://api.u-on.ru/1ga3bkGsm1km4/lead/create.json',
  5. CURLOPT_POST => true,
  6. CURLOPT_SSL_VERIFYHOST => false,
  7. CURLOPT_SSL_VERIFYPEER => false,
  8. CURLOPT_POSTFIELDS =>
  9. 'source='.urlencode('заявка с сайта').
  10. '&u_name='.urlencode($_POST['name']).
  11. '&u_phone='.urlencode($_POST['phone'])
  12. ));
  13. $resp = curl_exec($curl);
  14. curl_close($curl);


Я прописал в опциях FormCraft адрес к файлу с таким кодом от U-ON.Travel, но в CRM приходит почти пустая заявка, указан только источник "заявка с сайта", а данные с полей формы в заявку не передаются. Пробовал уже писать в этот код другие переменные вместо name и phone, но всё равно не получается.

Я правильно понимаю, что дело в этих переменных? Или код от U-ON.Travel в этом случае вообще не будет работать и нужно брать за основу код от FormCraft? А как его дописать, может кто поможет? Я уже обращался в поддержку U-ON.Travel, там отвечают только намеками, писал и автору плагина, но он тоже ничего внятного не подсказал. Может здесь мне помогут? Буду благодарен.
Добрый день!
Случайно, Вам не намекали откуда берутся значения:
Цитата:
'&u_name='.urlencode($_POST['name']).
'&u_phone='.urlencode($_POST['phone'])
Насколько я понял, в CRM приходит почти пустая заявка, указан только источник "заявка с сайта" потому, что значение source задано в явном виде
Цитата:
source='.urlencode('заявка с сайта')
Vladimir Kheifets Отправлено: 10 Июля, 2018 - 11:07:59 • Тема: Как получить начало каждой второй недели? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 398
livote пишет:
Если просто для начала недели, то использую

А тут непонятно.

Добрый день!
Дествительно "тут непонятно"... в смысле "машины времени"....
Попробуйте два варианта: задётся желаемое количество понедельников начиня с текущего или задаётся ограничивающая дата
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 09 Июля, 2018 - 19:11:53 • Тема: Отправка файла из структуры файлов • Форум: Вопросы новичков

Ответов: 1
Просмотров: 291
Pavel8897 пишет:
Подскажите пожалуйста! Есть скрипт, который отправляет почту со вложением на почту. Но файл подцепляется только из заранее заданной папки ($mail->AddAttachment("files/pic.jpg"). А нужно, что бы файл можно было выбрать самому из структуры.

Отправка происходит с помощью phpmailer.
Спойлер (Отобразить)
Добрый день!
Для начала добавьте в форму атрибут enctype :
Спойлер (Отобразить)
и попробуйте заменить это:
Спойлер (Отобразить)
на:
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 08 Июля, 2018 - 12:59:25 • Тема: CSS на ночь глядя • Форум: Вопросы новичков

Ответов: 3
Просмотров: 223
Dee пишет:
Ваша схема не работает )
Это будет выглядеть так на фото,
т е блоки выделены не все.

Добрый день!
Схема работает, так как Вы хотели, "четвертый элемент после блока .block "
т.е. после <div class="block"> четвертый <span>
Чтобы это работало нужно повторять <div class="block"> перед "любым количеством <span>".
Если же по какой-то причине Вы хотите определить свойства селектора, без повторения <div class="block">, то будет работать так:
CODE (html):
скопировать код в буфер обмена
  1. <style>
  2. div[class=block]+span+span+span+span{color:#ff0000 !important}
  3. div[class=block]+span+span+span+span+span+span+span+span{color:#ff0000 !important}
  4. div[class=block]+span+span+span+span+span+span+span+span+span+span+span+span{color:#ff0000 !important}
  5. </style>

Но думаю, что это грамоздко и проще определить отдельный класс, например, info2
и в тэгах писать:
CODE (html):
скопировать код в буфер обмена
  1. <style>.info2{color:#ff0000 !important}</style>
  2. <span class="info info2">Инфо!!!!!!!!!!!!</span>
Vladimir Kheifets Отправлено: 07 Июля, 2018 - 08:12:51 • Тема: CSS на ночь глядя • Форум: Вопросы новичков

Ответов: 3
Просмотров: 223
Dee пишет:
Привет, подскажите селектор, который бы выбрал каждый
четвертый элемент после блока .block , количество спан может быть любым
Спойлер (Отобразить)

Доброе утро!
Можно определить как смежный селектор:
div[class=block]+span+span+span+span{color:#ff0000 !important}
Если свойства, которые Вы хотите отределить в смежном селекторе определены в классе "info", то нужно добавлять !important

Удачи!
Спойлер (Отобразить)
Vladimir Kheifets Отправлено: 07 Июля, 2018 - 07:55:53 • Тема: Как в php нарисвать текст, что бы можно было форматировать текст? • Форум: Вопросы новичков

Ответов: 8
Просмотров: 363
livote пишет:
я не уточнил
мне нужно сделать это на сервере что бы потом сохранить картинкой

Добрый день!
Если Вы хотите сгенерировать картинку и сохранить её, то можете попробавать использовать библиотеку GD.
Однако советую Вам подумать насколько целесобразно генерировать картинки с текстом
и сохранять их. Что Вы с ними собираетесь делать? Видимо рано или поздно отправите в браузер клиента. Поэтом советую пользоваться CSS.
Удачи!
Vladimir Kheifets Отправлено: 06 Июля, 2018 - 20:37:04 • Тема: Как в php нарисвать текст, что бы можно было форматировать текст? • Форум: Вопросы новичков

Ответов: 8
Просмотров: 363
livote пишет:
По крайней мере что бы в одной строке можно было менять цвет, шрифт, размер шрифта (ну или хотя бы цвет). И что бы всё это можно было поворачивать/менять выравнивание.
Может какая-нибудь готовая библиотека есть?

Добрый день!
Вам правильно подсказали про CSS.
Делается это так:
Cтрока помещается в контейнер, например, в <div>, свойства которого можно задавать в СSS и/или изменять динамически в JS
Вот как это работает:
Спойлер (Отобразить)
Удачи!
Vladimir Kheifets Отправлено: 03 Июля, 2018 - 11:51:48 • Тема: SELECT данных из mysql за определенный промежуток времени • Форум: Работа с СУБД

Ответов: 2
Просмотров: 611
hivuld пишет:
Добрый день. Обращусь с просьбой за подсказкой. Буду очень признателен.

Я создаю интернет магазин. И у меня есть таблица products, в которой есть поля dateStart и dateEnd. dateStart - начало проведения акции, dateEnd - конец проведения акции.
Допустим пользователь на сайте выбирает за какой период он хочет увидеть акции, например 12.07.2018 - 14.07.2018.
Как сделать, чтобы из базы данных выберались акции за период, указанный пользователем?
P.S. В dateStart и в dateEnd хранится timestamp даты

Добрый день!
Поробуйте сделать так:
Спойлер (Отобразить)
Удачи!

Страниц (59): В начало « ... 38 39 40 41 [42] 43 44 45 46 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB