Вывод данных из БД MySQL

hotbox

Новичок
Здравствуйте! Я новичок, прошу помощи.
Пытаюсь сделать поиск по базе данных, имею следующее:
база "base"
таблица "objects", в ней 3 столбца: id, tel, address

форма поиска search.php:
Код:
<form action="test.php" method="get">
                                    <div>
                                        <select name="tel">
                                            <option value="0" disabled="disabled" selected="selected">Телефон</option>
                                            <option>8800200200</option>
                                            <option>8800200300</option>
                                        </select>
                                        <select name="address">
                                            <option value="0" disabled="disabled" selected="selected">Адрес</option>
                                            <option>Адрес1</option>
                                            <option>Адрес2</option>
                                            </select>
                                        <input type="submit" value="">
                                    </div>
                                </form>
тело файла test.php:
Код:
<?php
    if(!mysql_connect("localhost","root",""))
    {
        echo "<h4>Ошибка подключения к базе данных MySQL!</h4>";
        die();
    }
    mysql_select_db("base");

$object_town = $_GET['tel'];
$object_type = $_GET['address'];
$query = "SELECT `tel`, `address` FROM `objects` WHERE `tel` LIKE $tel AND `address` LIKE $address";
echo $query;
?>
при нажатии submit на search.php перекидывает на test.php - а там пустота... а нужно вывести данные, которые задал пользователь в search.php, которые присутствуют в базе.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Что значит пустота, даже текста запроса нет?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Вывод ошибок включил?
 

mr.Flash

Новичок
PHP:
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);

    if(!mysql_connect("localhost","root",""))
    {
        echo "<h4>Ошибка подключения к базе данных MySQL!</h4>";
        die();
    }
    mysql_select_db("base");

$object_town = $_GET['tel'];
$object_type = $_GET['address'];
$query = "SELECT `tel`, `address` FROM `objects` WHERE `tel` LIKE $object_town AND `address` LIKE $object_type";
echo $query;
?>
 

HQ0

Новичок
Если везде пусто — скорее всего произошла ошибка.
PHP:
error_reporting(E_ALL);
ini_set('display_errors', 'On');
ini_set('html_errors', 'On');
Использовать mysql_ функции очень плохая идея. Стоит посмотреть в сторону PDO, например.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
HQ0, ну вот дал ты кусок кода, ты бы хоть потрудился дать ссылки, где описано почему так надо делать и в какое место их в коде ставить. Да и html_errors тут вообще никаким боком к проблеме.

Автор пропал с концами, оставлю для него здесь это http://phpfaq.ru/debug
 

HQ0

Новичок
HQ0, ну вот дал ты кусок кода, ты бы хоть потрудился дать ссылки, где описано почему так надо делать и в какое место их в коде ставить. Да и html_errors тут вообще никаким боком к проблеме.

Автор пропал с концами, оставлю для него здесь это http://phpfaq.ru/debug
так я должен помочь решить проблему или сделать всё так, чтобы работало ? :)

html_errors не причём? меня больше устраивает вывод ошибки с форматированием, чем без.

Кстати, пару сообщений назад ты говоришь Вывод ошибок включил? Ну ты бы ссылок дал, а то непонятно что за вывод и что за ошибки вообще. :)
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
HQ0, если человек хочет нормальные ошибки, ставит себе xdebug.

Откуда мне знать, автор в курсе того, как ошибки включить или нет? И тут пришел ты, дал совет про mysql_ и т.д., при этом не описав толком ничего и почему ты так считаешь.
 
  • Like
Реакции: HQ0

hotbox

Новичок
вставка этих строк ничего не дало:
Код:
error_reporting(E_ALL);
ini_set('display_errors',1);
В сторону PDO я как-нибудь посмотрю, спасибо.
Потом я поковырял файл search.php и добавил всем вариантам option value ("
<option value="1">Адрес1</option>, <option value="2">Адрес2</option> и т.д.). Теперь при любом выборе на search.php перекидывает на test.php с текстом Resource id #4. Тут уже, наверно, надо как-то расчленять переменную
$query
?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
hotbox, значит код, который ты привел - не тот, что ты пишешь на самом деле.
 

hotbox

Новичок
LIKE '".$object_town AND."' - одинарные ковычки в запрос добавьте и будет Вам счастье
Спасибо!
hotbox, значит код, который ты привел - не тот, что ты пишешь на самом деле.
Вы правы, не хотел светить =)

Еще такой вопрос, а как сделать так, чтобы группа вариантов <select> подгрузил из базы варианты, на основе уже выбранного варианта из другой группы <select>? То есть, чтоб было понятнее, есть форма search.php:

Код:
<form action="test.php" method="get">
                                    <div>
                                        <select name="town">
                                            <option value="0" disabled="disabled" selected="selected">Город</option>
                                            <option>Москва</option>
                                            <option>Санкт-Петербург</option>
                                        </select>
                                        <select name="company">
                                            <option value="0" disabled="disabled" selected="selected">Компания</option>
                                </select>
                                        <input type="submit" value="">
                                    </div>
                                </form>
В котором две группы <select>: Город и Компания. Нужно сделать так, чтобы при выборе, допустим, города Санкт-Петербург, во второй группе выводились все компании этого города. Как это можно сделать? =)
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Смотреть в сторону связанных списков и ajax, в гугле есть примеры.
 

hotbox

Новичок
Смотреть в сторону связанных списков и ajax, в гугле есть примеры.
AJAXом отсылать город, возвращать компании.
Спасибо! Уже читаю...
Еще я не понимаю разницы между " и '. Что лучше, допустим, использовать в примере ниже и в чем разница?
Код:
$description = "описание"; vs. $description = 'описание';
 

HQ0

Новичок
hotbox, попробуй изучить этот пример
PHP:
$pageTitle = 'Some title';
echo "$pageTitle";
PHP:
$pageTitle = 'Some title';
echo '$pageTitle';
 
Сверху