[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема mysql_fetch_field
TopRider
Товарищи доброжелатели!!! Прошу помощи!)

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

Код:

<?
include("bd.php"); <---- подключение к базе данных
$sql = "SELECT * FROM `Users` WHERE `Login` LIKE `".$_SESSION['Login']."` LIMIT 1"; <---поиск по базе пользователя
$result = mysql_query($sql);
$fio = mysql_fetch_field($result); <---запись строки в массив $fio (эта строчка 21 mad.gif )
echo $fio['Surname']; <---вывод значения определенного поля
?>

Результат:

Warning: mysql_fetch_field(): supplied argument is not a valid MySQL result resource in R:\home\otdel.com\www\Profile.php on line 21

Подскажите плиз как правильно поступать с mysql_fetch_field,row,array и assoc user posted image



Спустя 3 минуты, 31 секунда (13.12.2011 - 17:58) inpost написал(а):
mysql_query($sql) or die(mysql_error());

Спустя 1 минута, 33 секунды (13.12.2011 - 18:00) Winston написал(а):
Значение для LIKE нужно брать в одинарные кавычки, а не в обратные апострофы
include("bd.php");
$sql = "SELECT * FROM `Users` WHERE `Login` LIKE '".$_SESSION['Login']."' LIMIT 1";
$result = mysql_query($sql) or die(mysql_error());
$fio = mysql_fetch_field($result);
echo $fio['Surname'];


PS: познакомься с комментариями в PHP // или /* */

Спустя 3 часа, 21 минута, 18 секунд (13.12.2011 - 21:21) oggy написал(а):
Доброе время суток.
использую функцию mysql_fetch_field

<?php

public function SelectFromTabel($table_name)
{
$this->ConnectBd();
$result=mysql_query("select* from $table_name");
$i=0;
while($i < mysql_num_fields($result))
{
echo $i;
$meta = mysql_fetch_field($result,$i);
echo "<pre>
$meta->name
</pre>";
$i++;
}
}
?>

как результат етого цыкла "$meta->name",присвоить сюда:

while($row=mysql_fetch_array($result))
{
echo $row=[$meta->name];// так пробую,некатит
}

Спустя 2 часа, 3 минуты, 13 секунд (13.12.2011 - 23:24) inpost написал(а):
oggy
Я что-то не совсем понял, это что, твоя тема и ты новый вопрос задаёшь? Если нет, что помешало тебе открыть свою тему? Ты понимаешь, что заходя в тему я хочу помогать ТС, а не тебе. А ты людей обманываешь!

Спустя 18 минут, 14 секунд (13.12.2011 - 23:43) TopRider написал(а):
Цитата
oggy
Я что-то не совсем понял, это что, твоя тема и ты новый вопрос задаёшь? Если нет, что помешало тебе открыть свою тему? Ты понимаешь, что заходя в тему я хочу помогать ТС, а не тебе. А ты людей обманываешь!


СОГЛАСЕН!!!! Мне бы на свой вопрос ответ получить)
Кстати, одинарные кавычки - не выход;

и насчет "or die(mysql_error())" - таким образом возникнет ненужная дыра в переменной $fio и тем более, что result в любом случае существует (это блок изменения данных существующего профиля)

Спустя 16 минут, 44 секунды (13.12.2011 - 23:59) Self написал(а):
Ошибка, наверное.
Сделай как inpost написал, проверь.

Спустя 39 минут (14.12.2011 - 00:38) inpost написал(а):
TopRider
Что за юмор: одинарные кавычки не выход? Это как раз из-за них у тебя была ошибка.
Какая ещё дыра в переменной? Если ошибка в запросе, что есть на 100%, то тебе напишется это...

Спустя 4 минуты, 43 секунды (14.12.2011 - 00:43) dadli написал(а):
а такое можно написать? что ето будит вернуть?
$fio = mysql_fetch_field($result);
echo $fio['Surname'];

( допустим запрос правилни и он вернул труе )

Спустя 3 минуты, 10 секунд (14.12.2011 - 00:46) TopRider написал(а):
Действительно ошибка) только дело вот в чем....пишет:

Fatal error: Cannot use object of type stdClass as array in R:\home\otdel.com\www\Profile.php on line 22



Спустя 6 минут, 56 секунд (14.12.2011 - 00:53) Self написал(а):
Цитата (TopRider @ 14.12.2011 - 01:46)
Действительно ошибка) только дело вот в чем....пишет:

        Unknown column 'TopRider' in 'where clause'

TopRider - это пользователь, который меняет свои данные и он точно есть в базе пользователей

Неизвестный столбец в where

Fatal error: Cannot use object of type stdClass as array in R:\home\otdel.com\www\Profile.php on line 22

не может использовать объект как массив ...

Спустя 4 минуты, 48 секунд (14.12.2011 - 00:58) TopRider написал(а):
Как из переменной $fio вытянуть значения полей?????

Нечто похожее на:

Имя: $fio['Name']
Фамилия: $fio['Surname']

Спустя 49 секунд (14.12.2011 - 00:59) dadli написал(а):
для того что вытянуть значении полеи, исползуи либо mysql_fetch_row либо mysql_fetch_assoc

Спустя 4 минуты, 40 секунд (14.12.2011 - 01:04) Self написал(а):
$fio->name ?

Спустя 11 минут, 5 секунд (14.12.2011 - 01:15) inpost написал(а):
mysql_fetch_field
замени на
mysql_fetch_assoc

Спустя 4 минуты, 42 секунды (14.12.2011 - 01:19) TopRider написал(а):
Цитата
$fio->name ?

Переделал с assoc, но в данном виде вообще не выводит ничего о_О

Спустя 1 минута, 8 секунд (14.12.2011 - 01:20) inpost написал(а):
Покажи код! Плюс выводить надо как $fio['name'] . Ты хоть читал мануал, как пользоваться assoc?! biggrin.gif

Спустя 2 минуты, 43 секунды (14.12.2011 - 01:23) TopRider написал(а):
<?
include("bd.php");
$sql = "SELECT * FROM `Users` WHERE `Login` LIKE '".$_SESSION['Login']."' LIMIT 1";
$result = mysql_query($sql) or die(mysql_error());
$fio = mysql_fetch_row($result) or die(mysql_error());
echo $fio['Rang'];
?>

Ничего не выводит!

Спустя 1 минута, 26 секунд (14.12.2011 - 01:25) inpost написал(а):
Я что-то не вижу у тебя assoc, как я написал, а вижу лишь row!

Спустя 37 секунд (14.12.2011 - 01:25) inpost написал(а):
И используй теги оформления кода [ php] .

Спустя 24 секунды (14.12.2011 - 01:26) TopRider написал(а):
Опа....отставить!!!!!Заработало!!
Inpost, блягодярю!!
п.с....случайно по совету забыл row на assoc поменять)))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.