|
|
|
| вот допустим есть запрос
$query = "SELECT * FROM am where client is not NULL";
но выводится лишь содержимое бд без указания имен полей | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 04:00)
| | SQL-сервер по запросу БД сам по себе в браузер не выводит вообще ничего.
В чем проблема-то? | |
|
|
|
|
|
|
|
для: Trianon
(27.10.2010 в 08:09)
| | выводит если он в php коде, но без названия полей, че не понятно-то?
вот код если нужен:
<?php
include "config.php";
$query = "SELECT * FROM am where client is not NULL";
$cat = mysql_query($query);
if(!$cat) exit(mysql_erorr());
echo "<table border=1>";
while(list($port, $client, $CC_AMS, $CC_AM, $prescription) = mysql_fetch_row($cat))
{
echo "<tr>
<td>$port</td>
<td>$client</td>
<td>$CC_AMS</td>
<td>$CC_AM</td>
<td>$prescription</td>
</tr>";
}
echo "</table>";
?>
|
Вот результат к примеру:
----------------------------------------------------------------------------------TP1.1 | Дальняя Связь | CC1.2.141-CC1.2.111 | CC1.1.111-TP1.1 | 08D007271-1 |
----------------------------------------------------------------------------------TP1.2 | Совинтел | C1.2.142-CC1.2.112 | CC1.1.112-TP1.2 | 09K040100 |
-----------------------------------------------------------------------------------
|
В таблице отсутствуют заголовки столбцов port, client, CC_AMS, CC_AM, prescription
Надо чтобы было так:
------------------------------------------------------------------------------------port | client | CC_AMS | CC_AM | prescription |
------------------------------------------------------------------------------------TP1.1 | Дальняя Связь | CC1.2.141-CC1.2.111 | CC1.1.111-TP1.1 | ------------------------------------------------------------------------------------TP1.2 | Совинтел | CC1.2.142-CC1.2.112 | CC1.1.112-TP1.2 |
------------------------------------------------------------------------------------
|
| |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 08:25)
| | Так надо сперва сформировать заголовок таблицы и не как
"<tr>
<td>$port</td>
<td>$client</td>
<td>$CC_AMS</td>
<td>$CC_AM</td>
<td>$prescription</td>
</tr>"
а уж потом выводить данные от list. | |
|
|
|
|
|
|
|
для: sim5
(27.10.2010 в 08:43)
| | Тут у меня данные в цикле выводятся, куда я заголовок впишу и как? | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 08:49)
| | Да, задача прямо неимеющая решения...
<?
echo "<table border=1>
<tr>
<td>port</td>
<td>client</td>
<td>CC_AMS</td>
<td>CC_AM</td>
<td>prescription</td>
</tr>";
while(list($port, $client, $CC_AMS, $CC_AM, $prescription) = mysql_fetch_row($cat))
echo "<tr>
<td>$port</td>
<td>$client</td>
<td>$CC_AMS</td>
<td>$CC_AM</td>
<td>$prescription</td>
</tr>";
echo "</table>";
|
| |
|
|
|
|
|
|
|
для: sim5
(27.10.2010 в 08:51)
| | а через sql запрос эти данные получить нельзя не создавая названия вручную а обратившись к бд? | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 11:09)
| | Нет, ну нормально, значит вам не лень назвать (заметьте самому, а не РНР за вас догадывается) имена переменных в list, а эти же самые имена просто прописать в заголовке, так уже проблема?
У вас что названия полей меняются по дням недели, что таковое требуется? | |
|
|
|
|
|
|
|
для: sim5
(27.10.2010 в 12:06)
| | а если у меня 100 полей в бд что я должен для каждого писать такой код, не долго ли? | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 13:40)
| | Во-первых я не представляю себе таблицу со ста заголовками, она неудобна будет на странице. Думаю, что и у вас нет столько. А во-вторых, вы пишите код один раз, и обращаетесь к одному и тому же, так что один раз написать это не проблема. Даже если и предположить, что вы выбираете из пусть существующих ста полей несколько для вывода, а затем опять несколько для вывода, то вы должны опять таки знать что в данном случае выводите.
В данном случае я не вижу никакой надобности узнавать имена полей, пусть даже это будет и 20 штук. Оправданно это будет только тогда, когда, например, большое число полей выводится порциями, по запросу пользователя, с постоянным смещением вправо. | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 13:40)
| | подмеченно правильно, представленный код тоже не универсален для всех таблиц | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 13:52)
| | А вам нужна универсальность? Универсальность обычно достигается потерей чего-то в чем-то. Вы не представили пока что задачу, которая бы оправдывала то, чего вы хотите, и довод "100 полей" невесомый. Посмотрим как вы решите "универсальность" и будет ли это "автомат", и если будет, то не будет ли он имеет "неуниверсальное". | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 13:40)
| | для любого количества полей(это я к своему предыдущему сообщению). Задача есть, несколько баз данных с несколькими таблицами, каждая выводится на своей странице с определенными условиями при запросе и у каждой таблицы разное количество полей и записей. | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 14:17)
| | Пишите, посмотрим какой у вас унивесальный автомат получится. | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 13:40)
| | . | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 08:25)
| | То есть php-код всё же в браузер выводит содержимое таблицы? Пскольку таковой php-код написан?
А заголовок таблицы не выводит. потому что php-кода, отвечающенго за вывод заголовка, нет.
Hint. помочь получить метаданные табличного результата может mysql_fetch_field() либо mysql_fetch_assoc() | |
|
|
|
|
|
|
|
для: Trianon
(27.10.2010 в 08:55)
| | да код написан и он выводит содержимое таблицы через sql запрос к бд а хотелось бы чтобы выводил и название заголовков через sql запрос или это невозможно? Когда в mysql пишешь аналогичный запрос названия ведь выводятся значит эти данные можно получить как-то | |
|
|
|
|
|
|
|
для: lightning.say
(27.10.2010 в 11:53)
| | >да код написан и он выводит содержимое таблицы через sql запрос к бд а хотелось бы чтобы выводил и название заголовков через sql запрос или это невозможно?
код и будет получать метаданные через sql-запрос.
но не в потоке данных, а в потоке метаданных.
В потоке данных тот же запрос никогда эти названия не вернет.
Поэтому и выводить названия придется отдельным php-кодом.
>Когда в mysql пишешь аналогичный запрос названия ведь выводятся значит эти данные можно получить как-то
Можно, конечно.
И я указал Вам инструменты, которые можно применить для реализации задуманного.
Только не стоит думать в клиенте mysql данные столбиков и их названия выводятся одним и тем же кодом - там тоже код вывода названий присутствует независимо. | |
|
|
|
|
|
|
|
для: Trianon
(27.10.2010 в 12:44)
| | спасибо и за это, буду осваивать! | |
|
|
|