Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Создание поиска по базе, например, брокеров?

 PHP.SU

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


 Страниц (1): [1]   

> Без описания
dmx
Отправлено: 16 Июля, 2007 - 08:39:06
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Июль 2007  
Откуда: Москва


Помог: 0 раз(а)




Приветствую, товарищи!

Не знаю в ту ветку пишу или нет. Но требуется ваша помощь, так как сам никак не соображу что да как делается.

Необходимо мне создать базу на сайте, например, по брокерам. Но к ней также необходима поисковая форма, чтобы человек-приходящий мог по определенным критериям найти подходящего для него брокера. Если позволите, дам здесь две ссылки на примеры, где это реализовано.
http://stockportal[dot]ru/main/usefu[dot][dot][dot]rokservices/base

и вторая, как я понимаю, более легкая в разработке
[/url]http://fxmail.ru/brokers/?action=search[/url]

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

Буду рад, если хоть как-то просветите меня в этом вопросе. Спасибо за помощь.
 
 Top
valenok Модератор
Отправлено: 16 Июля, 2007 - 13:59:10
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




А вы сами собираетесь писать?
Я бы вам посоветовал php и mysql если не знаете других языков и баз.
Но прежде чем вы напишите то что вы хотите - вам ещё много предстоит изучить, а в процессе изучения придёт и понимание что к чему да как.

Можете также заказать свою программу, но если вам интересно программирование и не гонит время - то выучите сами. Многие программисты берут слишком много денег за слишком простые программы, пользуясь тем что заказчики ничего не понимают.

Начать изучение php можно с
http://php.su/books/?php


-----
Truly yours, Sasha.
 
My status
 Top
dmx
Отправлено: 16 Июля, 2007 - 16:20:24
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Июль 2007  
Откуда: Москва


Помог: 0 раз(а)




Спасибо за ответы и за советы. Изучением всех этих баз и PHP по немного уже занимаюсь. Но возникают трудности на каждом шагу, да и без глупых вопросов с моей стороны тут никак не обойтись. Иногда даже просто не знаешь с какой стороны подойти к тому или иному вопросу. Поэтому ...

На одном из форумов нашел скрипт, как я понимаю, то что и нужно. Вот его код
PHP:
скопировать код в буфер обмена
  1.  
  2. <html>
  3. <head>                                  
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  5. <title></title>
  6. </head>
  7. <?PHP
  8. /*
  9.   DROP TABLE IF EXISTS `books`;
  10. CREATE TABLE `books` (
  11.   `id` int(11) NOT NULL auto_increment,
  12.   `author` text NOT NULL,
  13.   `name` text NOT NULL,
  14.   `info` text NOT NULL,
  15.   `year` text NOT NULL,
  16.   `isbn` text NOT NULL,
  17.   `pages` text NOT NULL,
  18.   `izdat` int(11) NOT NULL,
  19.   `tema` int(11) NOT NULL,
  20.   `pic` text NOT NULL,
  21.   `date` int(11) NOT NULL,
  22.   `new` int(11) NOT NULL,
  23.   `main` int(11) NOT NULL,
  24.   PRIMARY KEY  (`id`)
  25. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=31 ;
  26.  
  27. */
  28.  
  29. require_once("class.mysql.php");
  30.  
  31. $db_host  = "localhost";
  32. $db_name  = "books";
  33. $db_username = "books";
  34. $db_password = "books";
  35.  
  36. $db  = new mysql_db(); // mySQL
  37. // connect to DataBank
  38. if(!$db->getConnect($db_host, $db_name, $db_username, $db_password))
  39.    {
  40.     echo "<br><font color=red size=+2>MySQL Server does not work.<font><br>";
  41.     exit;
  42.    }
  43.    
  44. if(isset($_GET['search_by']))
  45.     {
  46.         $search_by = $_GET['search_by'];
  47.         $sql  = "SELECT `id`, `author`, `name`, `info`, `year`, `isbn`, `pages`, `izdat`, `tema`, `pic`";  
  48.         $sql .= " FROM `books` WHERE";
  49.         $sql .= " `author` LIKE '%$search_by%' OR `name` LIKE '%$search_by%' OR `info` LIKE '%$search_by%' OR  `isbn` LIKE '%$search_by%'";
  50.  
  51.         $result = $db->runSQL($sql, 1);  
  52.    
  53.     }
  54.  
  55.  
  56.  
  57.    
  58. ?>
  59.  
  60. <body>
  61.  
  62.  
  63. <php?
  64. foreach ($result as $obj) {
  65.         //
  66.         echo ' -- ' . $obj->id .' -- '. $obj->author.' -- '.$obj->name.' -- '.$obj->`info`;  // , `year`, `isbn`, `pages`, `izdat`, `tema`, `pic`";  
  67.        
  68. }
  69. ?>
  70.  
  71.  
  72. <form name="search" method="get">
  73. author, name, info, isbn ? <input type="text" name="search_by"><input type="submit">
  74.  
  75. </form>
  76. </body>
  77. </html>
  78.  



Поэтому на данный момент имеем: скрипт (надеюсь рабочий), который и будет производить необходимые операции в базе, если я правильно все понимаю. Также необходимо создать HTML форму поиска с кнопками и прочим (это все в dreamweaver можно сделать). Базу создать и таблицу - это все в MYSQL - это тоже вроде разобрался.

А что еще нужно? Есть скрипт, есть форма поиска, есть база и есть таблица в базе.

Также, например. я никак не могу понять как из MYSQL будет выводиться база на страницы сайта, причем отвечая требованиям дизайна моего шаблона в моей CMC и того дизайна базы, который я хотел бы видеть (расположение этих элементов базы там, а других здесь)? И, конечно же, результаты запроса по поисковой форме (дизайн)?

Надеюсь, вопросы корректно задал и в доступной форме.


 
 Top
Viper
Отправлено: 16 Июля, 2007 - 16:43:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




вот простой пример поиска по базе:
структура таблицы:
CREATE TABLE `book` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE ,
`p_number` VARCHAR( 25 ) NOT NULL PRIMARY KEY ,
`p_name` VARCHAR( 255 ) NOT NULL ,
`p_geo` VARCHAR( 255 ) NOT NULL ,
`p_info` VARCHAR( 255 ) NOT NULL ,
`p_customer` VARCHAR( 100 ) NOT NULL ,
`p_year` YEAR( 4 ) NOT NULL
) TYPE = MYISAM CHARACTER SET cp1251 COLLATE cp1251_general_cs;

скрипт:
PHP:
скопировать код в буфер обмена
  1.  
  2. <form method="post" action="<?PHP $_SERVER['PHP_SELF'] ?>">
  3.         <table border="0" cellspacing="0" cellpadding="0" align="center">
  4.                 <tr>
  5.                         <td align="center"><input name="srcstr" type="text" value="<?PHP echo $_POST['srcstr']; ?>" alt="Введите что искать" /></td>
  6.                         <td align="left"><input name="Submit" type="submit" value="<?PHP echo $txt['find']; ?>" /></td>
  7.                 </tr>
  8.         </table>
  9.         <input type="hidden" name="MM_search" value="form1" />
  10. </form> <?PHP
  11.         if ((isset($_POST['srcstr'])) && ($_POST['srcstr'] != "")) {
  12.         if (!empty($_POST['srcstr'])) $stmp = $_POST['srcstr'];
  13.                 @mysql_select_db($database_Local, $Local);
  14.                 $query_Recordset = "SELECT p_number, p_name, p_geo, p_info, p_customer FROM $dbname_Local WHERE p_number LIKE '%"
  15.                                 . $stmp ."%' OR p_name LIKE '%"
  16.                                 . $stmp ."%' OR p_geo LIKE '%"
  17.                                 . $stmp ."%' OR p_info LIKE '%"
  18.                                 . $stmp ."%' OR p_customer LIKE '%"
  19.                                 . $stmp ."%' ORDER BY id ASC --";
  20.                 $Recordset = @mysql_query($query_Recordset, $Local) or die(mysql_error());
  21.         if (!$Recordset) die ( "Something went wrong!" );
  22.         if (mysql_num_rows($Recordset) > 0) {
  23.         ?>
  24. <table border="0" cellpadding="0" cellspacing="0" width="100%">
  25.         <tr>
  26.                 <th align="center" width="6%"><?PHP echo $txt['num']; ?></th>
  27.                 <th width="15%"><?PHP echo $txt['type']; ?></th>
  28.                 <th width="25%"><?PHP echo $txt['object']; ?></th>
  29.                 <th width="25%"><?PHP echo $txt['info']; ?></th>
  30.                 <th width="25%"><?PHP echo $txt['customer']; ?></th>
  31.                 <th align="center" class="td" width="4%"><?PHP echo $txt['year']; ?></th>
  32.         </tr>
  33.         <?PHP while($par = mysql_fetch_array($Recordset)) { ?>
  34.         <tr>
  35.                 <td align="center"><?PHP echo $par['p_number']; ?></td>
  36.                 <td align="left"><?PHP echo $par['p_name']; ?></td>
  37.                 <td align="left"><?PHP echo $par['p_geo']; ?></td>
  38.                 <td align="left"><?PHP echo $par['p_info']; ?></td>
  39.                 <td align="left"><?PHP echo $par['p_customer']; ?></td>
  40.                 <td align="center"><?PHP echo $par['p_year']; ?></td>
  41.         </tr>
  42.         <?PHP
  43.                 }
  44.         ?>
  45. </table>
  46.         <?PHP
  47.                 }
  48.         }
  49.         ?>


дальше по примерно тому же принципу.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
dmx
Отправлено: 16 Июля, 2007 - 17:18:30
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Июль 2007  
Откуда: Москва


Помог: 0 раз(а)




Парни, я особо то ничего не понимаю и такого чайника в этих вопросах как я нужно еще поискать.

Viper'u спасибо, попробую скрипт в деле. Может что-то да получится.

Цитата:
дальше по примерно тому же принципу.
Дальше как раз ничего не понимаю. Что да как.

Но все-таки

Если кто может разъясните на пальцах по моим вопросам в третьем посте, чуть выше. А то совсем не понимаю.
 
 Top
valenok Модератор
Отправлено: 16 Июля, 2007 - 17:51:19
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Цитата:
Поэтому на данный момент имеем: скрипт (надеюсь рабочий), который и будет производить необходимые операции в базе, если я правильно все понимаю. Также необходимо создать HTML форму поиска с кнопками и прочим (это все в dreamweaver можно сделать). Базу создать и таблицу - это все в MYSQL - это тоже вроде разобрался.

А что еще нужно? Есть скрипт, есть форма поиска, есть база и есть таблица в базе.


Давайте попробуем составить цепь последовательностей и сразу станет ясно чего не хватает..

Есть форма в которой пользователь выбирает каких брокеров искать..
К примеру с полями стаж работы, кол-во. клиентов, стоимость обслуживания.
Пользователь выбирает или вводит интересующие его значения и нажимает сабмит. Что дальше происходит? Тут вступает в дело скрипт..
Скрипт есть? Здорово. Осталось понять что должен делать скрипт, делает ли приведённый выше скрипт нужное и чтоже вообще он делает.

И так, скрипт должен проверять какую информацию запросил пользователь, тоесть понять какое колво клиентов интересует пользователя, сколько он готов платить и какой профессионализм должен быть у его брокера..
Предположим я готов платить 1000$, ищю общительного брокера которым довольны и у которого более 200 клиентов, и работает он брокером больше 5 лет..
Значит тут скрипт должен определить требования, к кандидату брокеру и посмотреть имеются ли в базе такие брокеры.
Тоесть скрипт должен составить запрос в базу.
После того как скрипт получит ответ от базы, он должен вывести всё это на экран.

Теперь должна быть база данных, где будут записанны все брокеры, их стаж, требуемая ими з.п. , и колво клиентов у каждого из них.
представим себе эту таблицу так:

id | Брокер | телефон | клиенты | стаж | з.п.
-------------------------------- ----------
1 | Вася П. | 45-22-60 | 500 | 8 | 2800
2 | Коля Д. | 31-16-99 | 20 | 0,5 | 600
3 | Олег Ё. | 45-45-80 | 150 | 3 | 1200

id - порядковый номер брокера в компании
Брокер - имя брокера
Телефон - телефон брокера
Клиенты - количество клиентов брокера
Стаж - количество отработанных лет
З.п. - требуемая зарплата брокера в долларах


Тоесть для моего запроса - скрипт должен сформировать запрос к БД примерно такой:
Дай мне Брокера и телефон тех к у кого ( з.п. < 1000 И стаж > 5 И клиенты > 200 )



Ну что? Вроде всего хватает....


Цитата:
Также, например. я никак не могу понять как из MYSQL будет выводиться база на страницы сайта,
причем отвечая требованиям дизайна моего шаблона в моей CMC и того дизайна базы, который я хотел бы видеть (расположение этих элементов базы там, а других здесь)? И, конечно же, результаты запроса по поисковой форме (дизайн)?

А вот тут уже надо учить и понимать что такое БД


-----
Truly yours, Sasha.
 
My status
 Top
dmx
Отправлено: 16 Июля, 2007 - 18:35:02
Post Id


Новичок


Покинул форум
Сообщений всего: 4
Дата рег-ции: Июль 2007  
Откуда: Москва


Помог: 0 раз(а)




Спасибо тебе Valenok. Теперь все вроде бы почти понятно.

Но опять же все таки. Вывод на экран результатов запроса осуществляет скрипт, а дизайн кто формирует? Это нужно создать еще какой-то HTML файл (типа нечто шаблона результатов)?

И кто отвечает за оформление (опять же дизайн), например, списка всех брокеров (рис.1) и профиля брокера (рис.2)? Посмотрите, пожалуйста, вложения. MYSQL или это самому делать в CMC?

Мне главное понять цепочку, структуру и суть всего этого и тогда я думаю смогу остальное осилить. Но без этого никак. \n\n(Добавление)
рисунок 1\n\n(Добавление)
Sorry, что-то вложения никак не могу сделать. Если не трудно, то посмотрите здесь:

рис.2

http://stockportal[dot]ru/main/usefu[dot][dot][dot]e/profile?zid=29

рис.1

http://stockportal[dot]ru/main/usefu[dot][dot][dot]ervices/base/all
 
 Top
evgenijj
Отправлено: 16 Июля, 2007 - 19:16:03
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




dmx пишет:

Но опять же все таки. Вывод на экран результатов запроса осуществляет скрипт, а дизайн кто формирует? Это нужно создать еще какой-то HTML файл (типа нечто шаблона результатов)?

И кто отвечает за оформление (опять же дизайн), например, списка всех брокеров (рис.1) и профиля брокера (рис.2)? Посмотрите, пожалуйста, вложения. MYSQL или это самому делать в CMC?


Что ты подразумешаешь под словом "дизайн"? PHP-скрипт формирует HTML. Какой HTML сформирует PHP и какой CSS-файл будет подключен - такой и дизайн. Беда в том, что ты пытаешься задавать вопросы, а смысла этих вопросов не понимаешь.

* чтобы сохранить информацию о брокерах, надо создать в БД 2, 3, 4, ... таблицы в БД
* чтобы получить информацию о том, какой нужен брокер, надо сверстать форму,
* чтобы выдать информацию о брокерах, удовлетворяющих требованиям - составить запрос к БД и выдать информацию по запросу т.п. и т.д.

Подводя итог: кто тебе сказал, что программирование - это очень просто? Чтобы решить твою задачу, надо прочитать как минимум четыре учебника - HTML, CSS, PHP, SQL.

P.S.
В финдиректоры пойду, пусть меня научат
Я бы в штурманы пошел, пусть меня научат
В инженеры я пойду, пусть меня научат
Я в спасатели пойду - пусть меня научат
 
 Top
Viper
Отправлено: 18 Июля, 2007 - 09:50:08
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




dmx пишет:
Но опять же все таки. Вывод на экран результатов запроса осуществляет скрипт, а дизайн кто формирует? Это нужно создать еще какой-то HTML файл (типа нечто шаблона результатов)?

И кто отвечает за оформление (опять же дизайн), например, списка всех брокеров (рис.1) и профиля брокера (рис.2)? Посмотрите, пожалуйста, вложения. MYSQL или это самому делать в CMC?

собстно в моем примере обычный html с вставками php-кода. как прикрутить диз к html думаю ты найдеш в нете.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB