|
|
|
| Здравствуйте! Мне на днях уже помог очень хороший человек, но... есть ещё один вопрос!
сперва приведу код!
<?php
include("config.php");
$query = "SELECT * FROM table_1 LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo $result['url'];
?>
|
код выводит записи из поля! Теперь нужно чуть-чуть другое! Что дописать, чтобы на страницу выводилась определённая строка из поля?
например поле TEXT
первая запись : я на форуме
вторая запись : я в чате
так вот мне допустим нужно вывести на страницу только "я в чате" | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 18:30)
| | Нужно поставить условие в SQL-запросе при помощи конструкции WHERE. Например
<?php
include("config.php");
$query = "SELECT * FROM table_1
WHERE `text` = 'я в чате'
LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo $result['url'];
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 18:38)
| | Ну а допустим я не знаю что написано во второй строчке в первом поле? Можно воспользоваться например полем "id"?
Например я знаю только номер(id) срочки, можно вывести?
или заместо
WHERE `text` = 'я в чате'
|
нужно поставить
WHERE `id` = 'номер строчки'
|
и на страницу выйдет вся строчка?
Правильно я говорю или нет? | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 18:42)
| | >Правильно я говорю или нет?
Да, совершенно верно. Если это число, то можно его указывать без одиночных кавычек. | |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 18:44)
| | тогда теперь ещё одна у меня ошибка получилась!
сейчас поястню
у меня 3 поля: "id" "name" "url"
использую код:
<?php
include("config.php");
$query = "SELECT * FROM table_1 WHERE `id` = '2' LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo $result['url'];
?>
|
но выводит мне информацию только поля "url"
видимо виной всему строка
на что мне её поменять, чтобы выводилась информация из всех полей? | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 18:51)
| | Дело в том, что $result - это ассоциативный массив, если вы хотите вывести значение id - используйте $result['id'], если name - $result['name'], если url - $result['url']. Если появится ещё одно поле - оно будет доступно по своему имени в массиве $result. Например вывести гиперссылку с названием name и ссылкой url можно так
<?php
include("config.php");
$query = "SELECT * FROM table_1 WHERE `id` = '2' LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo "<a href='$result[url]'>$result[name]</a>";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 18:54)
| | а вот например мне нужно вывести поле name и subname
мне нужно $result[name] и $result[subname] разделять запятой? | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 18:57)
| | Да. Только вместо запятой лучше использовать точку - традиционный символ объединения строк в PHP
<?php
echo $result['name'].$result['subname'];
?>
|
или вписать элементы массива в строку (т.е. выполнить так называемую интерполяцию переменных в строку)
<?php
echo "$result[name] $result[subname]";
?>
|
Обратите внимание, что в этом случае не нужно указывать одиночные кавычки. | |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 19:03)
| | спасибо вам огромное! Но я всётаки не могу одного понять!...
как мне вывести все поля при помощи индекса строки?(id) | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 19:04)
| | Не очень понятно, что вызывает затруднение, данный скрипт вам что отображает
<?php
include("config.php");
$query = "SELECT * FROM table_1 WHERE `id` = '2' LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo "$result[id] $result[name] $result[url]";
?>
|
И что должен выводить нужный вам скрипт? | |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 19:08)
| | Нет, вы меня не правильно поняли,Просто у меня таблице есть где более 300 полей, и не буду ведь я все поля перечислять в скрипте!.... :-)
Ведь есть возможность выводить все поля по одному полю ID? (тип поля int(11), auto_increment)
Очень срочно нужно, можете помочь? | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 19:12)
| | Ясно. Вы можете просто обращаться по номерам полей
<?php
include("config.php");
$query = "SELECT * FROM table_1 WHERE `id` = '2' LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo "$result[1] $result[2] $result[3]";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 19:19)
| | ну тогда мне всё равно придётся писать в скрипте
<?php
include("config.php");
$query = "SELECT * FROM table_1 WHERE `id` = '2' LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
echo "$result[1] $result[2] $result[3] ........ $result[298] $result[299] $result[300]";
?>
|
:-( Жалко блин...
Ну придётся пока так!..
спасибо! | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 19:23)
| | Почему... вы можете воспользоваться циклом
<?php
include("config.php");
$query = "SELECT * FROM table_1 WHERE `id` = '2' LIMIT 1";
$tbl = mysql_query($query);
if(!$tbl) exit("Ошибка выполнения запроса ".mysql_error());
$result = mysql_fetch_array($tbl);
for($i = 1; $i <= 300; $i++) echo $result[$i]." ";
?>
|
Только лучше избегать такого количества столбцов - 300 это повод задуматься, чтобы поля превратить в записи (строки) ещё одной таблицы. | |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 19:26)
| | ОЙ! Спасибо вам огромное!... | |
|
|
|
|
|
|
|
для: cheops
(15.09.2009 в 19:26)
| | Ну я об этом тоже задумался, скоро буду переделывать!
:-) | |
|
|
|
|
|
|
|
для: frisst
(15.09.2009 в 19:12)
| | три сотни полей в таблице - явный признак, что структуру базы забыли спроектировать. Тем более, если хотя бы часть из них хранит однотипные данные. | |
|
|
|
|
|
|
|
для: Trianon
(15.09.2009 в 20:05)
| | как раз она спроектирована!
база содержит полную информацию о человеке! Дата, имя.... ,соц.положение...,сост семьи,.... и многое другое!
Вообщето не я её создавал, а другой человек, а мне приходится все ошибки теперь разгребать! А я сам то не всё знаю... :-) | |
|
|
|