Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
mstixy
1

Вывод результатов

28.01.2013, 22:21. Показов 616. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
здравствуйте!
написал запрос к БД на php, с формой поиска post, но поиск не работает, а точнее результаты не выводит. когда я убираю условия для выборки, либо подставляю значения сразу в код - работает и выводит на ура и моментально, но когда пытаюсь именно вывести результаты поиска - выходит пустая страница.

очень надеюсь на вашу помощь. заранее спасибо!

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<form method="post" class="search" action="test.php">
    <input type="mysearch" name="query" placeholder="   Введите название организации или вид деятельности" />
    <button type="submit"><b>Поиск</b></button>
    </form>
 
<?
define('DB_HOST', '***');
define('DB_NAME', '***');
define('DB_USER', '***');
define('DB_PASS', '***');
 
if (!mysql_connect(DB_HOST, DB_USER, DB_PASS)) {
    exit('Cannot connect to server');
}
if (!mysql_select_db(DB_NAME)) {
    exit('Cannot select database');
}
 
mysql_query('SET NAMES UTF8');
 
 
// скрипт взятый за основу
function get2set ($key='', $val='') { // функция перевода переменных $_GET в массив, с учетом поправки
    $set = array();
    $set = $_GET;
    if ( !empty($key) && is_array($set) ) {
        if ( is_array($key) ) {
            if ( count($key)>0 ) {
                foreach ( $key as $k=>$v ) if ( empty($v) ) unset($set[$k]); else $set[$k] = $v;
            }
        } else {
            if ( empty($val) ) unset($set[$key]); else $set[$key] = $val;
        }
    }
    return $set;
}
 
function get2str ($key='', $val='') { // функция перевода переменных $_GET в строку, с учетом поправки
    $set = get2set($key, $val);
    if ( count($set)>0 ) {
        foreach ($set as $k=>$v) $set[$k] = $k."=".urlencode($v);
        return "?".implode("&",$set);
    }
}
 
function pages ($total, $p, $pp=10) { // функция вывода страниц
  $pages = array ();
  $tpages = ceil ($total/$pp); // колличество страниц
  $bpage = $p - 10; if ($bpage<1) $bpage = 1;
  $epage = $p + 10; if ($epage>$tpages) $epage = $tpages;
 
  if ( $p>1 ) $pages[] = '<a href="' . $_SERVER['PHP_SELF'] . get2str("p", 1) . '">в начало</a>';
  for ( $i=$bpage; $i<=$epage; $i++ ) $pages[] = ( $i==$p ) ? '<b>'.$i.'</b>' : '<a href="' . $_SERVER['PHP_SELF'] . get2str("p", $i) . '">'.$i.'</a>';
  if ( $p<$tpages ) $pages[] = '<a href="' . $_SERVER['PHP_SELF'] . get2str("p", $tpages) . '">в конец</a>';
 
  if ( count($pages)>0 ) echo '<p>'.implode (' | ',$pages).'</p>';
}
 
$p = (int) $_GET['p']; if ($p<1) $p=1; // текущая страница
$pp = 10; // колличество результатов на одной странице
$start = ($p-1)*$pp; // начальная позиция выборки строк результата запроса
 
 
 
$sql = "SELECT COUNT(*) FROM UL WHERE NAME LIKE '%query%'";
$r = mysql_query($sql);
$total = mysql_result($r,0,0); // общее количество результатов без разбиения на строки
 
$sql = "SELECT * FROM UL WHERE NAME LIKE '%query%' LIMIT ".$start.", ".$pp;
$r = mysql_query($sql);
while ( $ar=mysql_fetch_array($r) ) {
    /* здесь идет вывод данных в нужном вам формате */
        echo '<b>'.$ar['NAME'].'</b>'.'<br/>'. $ar['TELEFON'].'<br/>'. $ar['ADRES'].'<br/>'. $ar['WEB'].'<br/>'. $ar['EMAIL'].'<br/>'.'<br/>';
}
 
pages($total, $p, $pp); // вывод страниц
?>
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.01.2013, 22:21
Ответы с готовыми решениями:

Вывод результатов тестирования
Уважаемые форумчане! Подскажите по выводу результатов тестирования. У меня есть 1 - массив...

Постепенный вывод результатов
Есть код: 1. выполняется что-то 2. вывод результатов 3. выполнение 4. вывод 1 и 3, т.е....

Вывод результатов вычислений в форме
Помогите пожалуйста, нужно, чтобы результат вычисления калькулятора записывался в форму (первое...

Вывод результатов поиска в таблицу
Всем привет. Не могу вывести данные в таблицу построчно. Выводит все данные только в одну строку....

0
28.01.2013, 22:21
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.01.2013, 22:21
Помогаю со студенческими работами здесь

Случайная генерация и вывод 10 результатов
Всем привет! у меня есть небольшая проблемка, вот мой скрипт который выводит случайное число из...

Поправить вывод результатов поиска
Здравствуйте, написал поиск. Информация из БД выводится в таблицу. При поиске получается так, что...

Вывод результатов метода POST
Здравствуйте, совсем новичок в php, но вот встала задача вывести результаты опроса сервиса...

Limit и Offset: вывод более 50 результатов
Задумка: вывести ссылки на все изображения из блога. Сложность: у АПИ стоит лимит на 50...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Cisco ASA: подробное руководство по настройке и использованию
hw_wired 25.01.2025
В сетевой безопасности межсетевые экраны играют критически важную роль в защите корпоративных инфраструктур от постоянно растущего числа киберугроз. Среди множества решений для обеспечения. . .
Cisco Intelligent Services Gateway: руководство по настройке
hw_wired 25.01.2025
В сетевых инфраструктурах Cisco Intelligent Services Gateway (ISG) играет ключевую роль в организации и управлении сервисами для конечных пользователей. Этот компонент представляет собой. . .
Использование Go (Golang) в Highload-проектах: преимущества и особенности
bytestream 25.01.2025
В мире высоконагруженных систем выбор правильного инструментария играет ключевую роль в успехе проекта. Go (Golang) представляет собой относительно молодой язык программирования, который быстро. . .
Откуда у float лишние цифры в конце дробной части. Представление чисел с плавающей точкой
bytestream 25.01.2025
При разработке программного обеспечения часто возникает необходимость работать с вещественными числами, которые содержат дробную часть. В современных компьютерных системах такие числа представляются. . .
Как использовать глобальную переменную в функции в Python
bytestream 25.01.2025
В программировании на Python глобальные переменные представляют собой особый тип переменных, которые доступны для использования во всех частях программы, включая различные функции, классы и модули. . . .
Как в цикле обойти все элементы map в Java
bytestream 25.01.2025
В разработке на Java одной из наиболее востребованных структур данных является интерфейс Map, который предоставляет эффективный способ хранения и управления парами "ключ-значение". Разработчики. . .
Для чего нужен UserManager.isU­serAGoat(­) в Android и как это использовать
bytestream 25.01.2025
В мире Android-разработки существует множество интересных и порой загадочных функций, о которых знают далеко не все разработчики. Одной из таких функций является метод UserManager. isUserAGoat(),. . .
Как обойти масси в JavaScript. Всё о циклах
bytestream 25.01.2025
JavaScript представляет собой мощный язык программирования, широко используемый в веб-разработке, где массивы и циклы являются фундаментальными концепциями для эффективной работы с данными. Массив в. . .
Как сделать, чтобы существующая ветка отслеживала удалённую в Git. Связывание локальных и удалённых веток
bytestream 25.01.2025
В разработке программного обеспечения системы контроля версий стали неотъемлемой частью процесса создания качественного программного продукта. Эти инструменты позволяют разработчикам эффективно. . .
Как проверить, что файл НЕ существует с помощью Bash
bytestream 25.01.2025
В системном администрировании проверка существования файлов является фундаментальной операцией, особенно при написании скриптов на Bash. Правильная обработка ситуаций, когда файл отсутствует,. . .
Как проверить, что строка пустая, неопределена или null в JavaScript
bytestream 25.01.2025
При разработке веб-приложений на JavaScript разработчики регулярно сталкиваются с необходимостью проверки строковых значений на различные состояния. Валидация данных является критически важным. . .
Как проверить существование ключа в объекте или массиве в JavaScript
bytestream 25.01.2025
При разработке веб-приложений на JavaScript программисты постоянно сталкиваются с необходимостью работать с объектами и массивами. Эти структуры данных являются фундаментальными элементами языка и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru