За последние 24 часа нас посетил 24471 программист и 1726 роботов. Сейчас ищут 1904 программиста ...

Помогите создать поиск по текстовой базе данных!

Тема в разделе "Сделайте за меня", создана пользователем Yankovitz, 21 ноя 2014.

  1. Yankovitz

    Yankovitz Активный пользователь

    С нами с:
    21 ноя 2014
    Сообщения:
    194
    Симпатии:
    6
    Есть текстовая база данных с таким содержанием:
    1234 | Иванов | ул. Московская д.3 кв.35 | 30.000
    1235 | Петров | ул. Ситникова д.7 кв. 55 | 500.000
    1236 | Сидоров | ул. Ситникова д.7 кв. 55 | 500.000
    Нужно вывести баланс после ввода лицевого счета в форму

    Нужно вывести содержание через форму в html
    <form name="forma6">
    <input class="text" type="text" />
    <input id="but" value="Проверить баланс" type="button"/>
    <textarea wrap="virtual" name="res"></textarea></form>

    Подскажите скрипт поиска!
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    ваши данные это csv. все, что вам нужно это fgetcsv() и один if () внутри цикла чтения.

    см. справку
           
     
  3. Yankovitz

    Yankovitz Активный пользователь

    С нами с:
    21 ноя 2014
    Сообщения:
    194
    Симпатии:
    6
    А можете разжевать, я не знаком с php&
     
  4. metadon

    metadon Активный пользователь

    С нами с:
    6 фев 2006
    Сообщения:
    779
    Симпатии:
    0
    Это в раздел сделайте за меня
     
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    Yankovitz, вы готовы платить за работу?
     
  6. torrius

    torrius Активный пользователь

    С нами с:
    28 июн 2014
    Сообщения:
    35
    Симпатии:
    1
    В простейшем варианте будет выглядеть так:
    "index.html":
    Код (Text):
    1. <!DOCTYPE HTML>
    2. <html>
    3.     <head>
    4.         <meta charset="utf-8"/>
    5.         <script type="text/javascript">
    6.             function balance(form){
    7.                 document.getElementById('balance').innerHTML = 'Ждите, идет обработка...';
    8.                 var script = document.createElement('script');
    9.                 script.src = 'get_balance.php?id=' + form.elements['id'].value;
    10.                 document.body.appendChild(script);
    11.                 document.body.removeChild(script);
    12.             }
    13.         </script>
    14.     </head>
    15.     <body>
    16.         <form method="GET" onsubmit="balance(this); return false;">
    17.             <input type="text" name="id" />
    18.             <input type="submit" value="Проверить баланс" />
    19.         </form>
    20.         <p>Ваш баланс: <span id="balance">0</span></p>
    21.     </body>
    22. </html>
    "get_balance.php":
    Код (PHP):
    1. <?php
    2. $file        = 'data.txt'; //текстовый файл с данными
    3. $fieldnum    = 3; // номер поля с балансом
    4. $balance = 'Данные не найдены';
    5.  
    6. if(    isset($_GET['id'])
    7. &&    is_numeric ($_GET['id'])
    8. &&    file_exists ($file)
    9. &&    ($f = fopen($file, 'r')) !== false){
    10.     
    11.     while(($data = fgetcsv($f, 1000, "|")) !== false){
    12.         if(trim($data[0]) != trim($_GET['id'])) continue;
    13.         $balance = trim($data[$fieldnum]);
    14.         break;
    15.     }
    16.     fclose($f);
    17. }
    18. //sleep(2);
    19. echo "document.getElementById('balance').innerHTML = " . "'$balance'";
    20. ?>
    "data.txt":
    Код (Text):
    1. 1234 | Иванов | ул. Московская д.3 кв.35 | 30.000
    2. 1235 | Петров | ул. Ситникова д.7 кв. 55 | 500.000
    3. 1236 | Сидоров | ул. Ситникова д.7 кв. 55 | 700.000