SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 11.11.2008 17:19:19

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Вывод из ячейки

Здравствуйте!
У меня вопрос у меня есть таблица  USERS в этой таблице  3 ячейки  id, login,password
Как сделать, что бы из ячейки login выводилось на странице сайта.

Неактивен

 

#2 11.11.2008 17:59:30

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Не понял, что именно Вы имеете в виду.

Чтобы выбрать одну колонку нужно использовать запрос select login from users;
при этом будет выбрана вся колонка login.
Чтобы выбрать значение из одной ячейки нужно её идентифицировать, например: select login from users where id='значение';

Неактивен

 

#3 11.11.2008 18:10:12

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

vasya написал:

Не понял, что именно Вы имеете в виду.

Чтобы выбрать одну колонку нужно использовать запрос select login from users;
при этом будет выбрана вся колонка login.
Чтобы выбрать значение из одной ячейки нужно её идентифицировать, например: select login from users where id='значение';

У меня получилось вот такое Parse error: syntax error, unexpected T_STRING

Неактивен

 

#4 11.11.2008 18:23:26

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Это синтаксическая ошибка в коде. Видимо вы забыли поставить ";" или напортачили с кавычками. Приведите кусок кода, где вы это пишите.

Неактивен

 

#5 11.11.2008 20:33:25

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

<?php
include_once("config.php");

checkLoggedIn("yes");
doCSS();
print("Привет <b>".$_SESSION["login"]."</b><br>\n");
print("Твой пароль: <b>".$_SESSION["password"]."</b><br>\n");
print("<a href=\"logout.php?".session_name()."=".session_id()."\">Выход</a>");
?>

Неактивен

 

#6 12.11.2008 18:12:59

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Не понял, где именно вы здесь хотите получить значение из таблицы? По какому параметру вы идентифицируете ячейку?

Привидите полный вариант вашего кода.

Неактивен

 

#7 12.11.2008 21:02:25

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

Собственно у меня получилось вывести и ячейки вот таким образом

<?php
include_once("config.php");

$db = mysql_connect("localhost", "root");
mysql_select_db("lol",$db);
$result = mysql_query("SELECT * FROM users",$db);
printf("First Name: %s<br>\n", mysql_result($result,10,"login"));
mysql_close($db);

checkLoggedIn("yes");
doCSS();
print("Привет <b>".$_SESSION["login"]."</b><br>\n");
print("Твой пароль: <b>".$_SESSION["password"]."</b><br>\n");
print("<a href=\"logout.php?".session_name()."=".session_id()."\">Выход</a>");

?>

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

Неактивен

 

#8 13.11.2008 19:06:05

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

$result = mysql_query("SELECT * FROM users",$db);  -- производит выборку из всей таблицы users (все колонки и все строки)

mysql_result($result,10,"login")  -- из проведенной ранее выборки берет значение одной ячейки (колонки login, строка №11)

Поэтому каждый раз (т.е. для любого пользователя) будет одно и тоже значение.


Я собственно и спрашивал: каким образом вы собираетесь идентифицировать выбираемую строку. Т.е. вам нужно писать, что типа select * from users where .... вместо троеточия условие по которому идентифицируется строка.

Неактивен

 

#9 14.11.2008 18:04:03

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

vasya написал:

$result = mysql_query("SELECT * FROM users",$db);  -- производит выборку из всей таблицы users (все колонки и все строки)

mysql_result($result,10,"login")  -- из проведенной ранее выборки берет значение одной ячейки (колонки login, строка №11)

Поэтому каждый раз (т.е. для любого пользователя) будет одно и тоже значение.


Я собственно и спрашивал: каким образом вы собираетесь идентифицировать выбираемую строку. Т.е. вам нужно писать, что типа select * from users where .... вместо троеточия условие по которому идентифицируется строка.

Я даже и не знаю, какое условие должно быть я только начала заниматься MYSQL
А как мне сделать,  что бы не для любого пользователя было, пример можно какой не будь!

Неактивен

 

#10 15.11.2008 14:38:26

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Чтобы не для любого пользователя, то например, select login from users where id = 4;
Вот только откуда вам будет известно значение поля id для нужного пользователя?

У вас ошибка в неправильной постановке вопроса. Вы хотите выводить для каждого пользователя его данные, а значит должны как-то его идентифицировать. При регистрации вам уже известно, что это за пользователь (его логин известен).
Правильной постановкой вопроса может быть, например:
1) проверить наличие комбинации логин/пароль в таблице users в момент авторизации пользователя.
2) вывести пароль( или другие данные пользователя, если они у вас храняться) для данного уже авторизованного пользователя.

Неактивен

 

#11 15.11.2008 15:27:09

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

Вот это.
2) вывести пароль( или другие данные пользователя, если они у вас храняться) для данного уже авторизованного пользователя.

Неактивен

 

#12 15.11.2008 15:33:53

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Тогда логин вам уже должен быть известен, раз пользователь авторизовался.
select password from users where login = 'логин_данного пользователя';

Неактивен

 

#13 15.11.2008 15:41:40

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

Известин логин даже пароль известин, логин и пароль видно отлично. А остольную информацию как сделать что было видно ?

Неактивен

 

#14 15.11.2008 15:47:24

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Тогда у вас в таблице users должно быть не 3 ячейки  id, login,password, а более

select * from users where ... ; выбирает все поля из таблицы (вместо * вы можете перечислить через запятую нужные вам поля)

Неактивен

 

#15 15.11.2008 15:58:44

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

Так ?
SELECT login, password, fame FROM users WHERE

Неактивен

 

#16 15.11.2008 16:04:06

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Раз логин и пароль уже известны, то и смысла их выбирать, скорее всего, нет.

select fame from users where login='логин';
В случае если login у вас уникальное поле, если нет, то надо проверять пару логин/пароль
select fame from users where login='логин' and password='пароль';

Неактивен

 

#17 15.11.2008 16:42:00

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

Спасибо тебе большое за помощь.
У меня вобщем не получаеться незнаю почему.
Ты незнаешь где можно прочитать шаг за шагом как 2) вывести пароль( или другие данные пользователя, если они у вас храняться) для данного уже авторизованного пользователя.

Неактивен

 

#18 15.11.2008 16:47:02

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Где прочитать не знаю.
А что именно не получается? Получается другой результат или возникает ошибка?

Неактивен

 

#19 15.11.2008 16:47:57

Sleza
Участник
Зарегистрирован: 11.11.2008
Сообщений: 10

Re: Вывод из ячейки

Возникает ошибка .... наверно что то не так.

Неактивен

 

#20 15.11.2008 16:51:15

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Вывод из ячейки

Какая ошибка? В какой переменной хранится значение логина?

Приведи нынешний вариант кода, скорее всего где-то синтаксическая ошибка.

Неактивен

 

#21 19.11.2008 16:54:17

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 849

Re: Вывод из ячейки

Вообще из вашего описания не очень понятно, какая ошибка возникает..
Попробуйте такой код:

<?php
include_once("config.php");

$db = mysql_connect("localhost", "root");
mysql_select_db("lol",$db);

checkLoggedIn("yes");
doCSS();
print("Привет <b>".$_SESSION["login"]."</b><br>\n");
print("Твой пароль: <b>".$_SESSION["password"]."</b><br>\n");
print("<a href=\"logout.php?".session_name()."=".session_id()."\">Выход</a>");

$result = mysql_query("SELECT * FROM users WHERE login = '$_SESSION[login]'") or die(mysql_error());
if ($row = print_r(mysql_fetch_assoc($result, 1)) echo $row
else echo 'No such user';
echo '<br/>';
?>


Что получается?

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson