Помощник
Ничего не выводится после вызова метода |
Kuchuluk
|
Сообщение
#1
|
||
|
|
||
|
|||
isvetlichniy |
2.4.2013, 22:30;
Ответить: isvetlichniy
Сообщение
#2
|
|
оно и не будет работать
$_GET['login'] это что такое? откуда ты берешь этот параметр? вот в этой статье можешь почитать что такое GET и POST |
|
|
html-ka |
3.4.2013, 15:57;
Ответить: html-ka
Сообщение
#3
|
|
дамп данных сделай и посмотри что там
|
|
|
isvetlichniy |
3.4.2013, 19:27;
Ответить: isvetlichniy
Сообщение
#4
|
|
чтобы логин брался из массива GET, и началось. чтобы логин выводился из этого массива, он должен там быть, тоесть в адресной строке он должен быть. всегда например, http://yoursite.com?login=somelogin |
|
|
Kuchuluk
|
Сообщение
#5
|
|
он там и так есть, как я по вашему тогда попадаю на страницу профиля пользователя? по его логину, который в $_GET["login"]
|
|
|
isvetlichniy |
3.4.2013, 22:09;
Ответить: isvetlichniy
Сообщение
#6
|
|
как то все у тебя запутанно получается, я бы рекомендовал испоьлзовать не логин, а айди
ну давай попробуем потестить вместе 1. Посмотрим, какой запрос отправляется в базу. В функции selAssoc после того как ты определишь запрос в базу, то есть после строчки $query = "SELECT ".$field." FROM ".$tb_name." WHERE ".$where; добавь echo $query; в результате запрос будет показан в браузере, выполни его в phpmyadmin и посмотри что возвращается 2. Функция selAva , после того, как получишь значение, после строчки $ava = $this->selAssoc("avatars", "id, ava_name", "us_login = ".$_GET['login']." AND status = 2"); добавь такое print_r($ava); и посмотри , что есть в массиве пока все, что могу посоветовать |
|
|
html-ka |
4.4.2013, 6:47;
Ответить: html-ka
Сообщение
#7
|
|
[member=Kuchuluk], мой тебе совет, бросай ты ООП, а лучше выучи хорошо для начала процедерное программирование, судя по коду ты даже в мануал не заглядывал навскидку:
вот это зачем передавать в selAva? $ava = $this->selAssoc("avatars", "id, ava_name", "us_login = ".$_GET['login']." AND status = 2"); дальше без слез не посмотришь, практически классическая sql-injection "us_login = ".$_GET['login']." а это что? for($i = 0; $i < mysql_num_rows($result); $i++) масло маслянное $row = mysql_fetch_assoc($result);
$data[]=$row; |
|
|
fedornabilkin |
4.4.2013, 9:51;
Ответить: fedornabilkin
Сообщение
#8
|
|
Ошибки у ТС конечно ужасные, но это не повод давать плохие рекомендаици.
[member=html-ka], если критикуешь, то следом давай уже и пиши как надо сделать правильно. Например обработать данные из $_GET строковыми функциями (экранировать спецсимволы, удалить теги и т.д.) for($i = 0; $i < mysql_num_rows($result); $i++) так действительно делать нехорошо, потому что количество запросов будет равно количеству строк, поэтому лучше сначала подсчитать количество строк, присвоить значение переменной и сравнивать в цикле с переменной. $num_rows = mysql_num_rows($result); for($i = 0; $i < $num_rows; $i++) Например вот так. |
|
|
html-ka |
4.4.2013, 12:39;
Ответить: html-ka
Сообщение
#9
|
|
Ошибки у ТС конечно ужасные, но это не повод давать плохие рекомендаици. и чем же они плохи? fedornabilkin, если критикуешь, то следом давай уже и пиши как надо сделать правильно так действительно делать нехорошо, потому что количество запросов будет равно количеству строк, поэтому лучше сначала подсчитать количество строк, присвоить значение переменной и сравнивать в цикле с переменной. Например вот так. $num_rows = mysql_num_rows($result); for($i = 0; $i < $num_rows; $i++) а чем твое решение лучше ТС? Походу собирается клуб нелюителей оф.документации А чем вам while не угодил? Причем в первом условии цикл вообще не нужен, если логин является уникальным if (isset($where)) это тоже очень странная конструкция, она всегда будет объявлена и не пустая, исходя из этого $ava = $this->selAssoc("avatars", "id, ava_name", "us_login = ".$_GET['login']." AND status = 2"); вторая часть условия вообще будет не нужна |
|
|
fedornabilkin |
4.4.2013, 14:11;
Ответить: fedornabilkin
Сообщение
#10
|
|
[member=html-ka], я же написал, что правильно и выгодно сделать один запрос к бд и получить количество записей, а не обращаться каждый раз, с каждой итерацией.
while конечно же удобнее, но почему-то мне кажется тут вообще цикл не нужен. Если надо получить аватар пользователя, то и получаем один аватар, т.е. делаем запрос по айди или логину. А если надо вывести список аватаров, то тогда уже циклы и тот же while. Но я думаю это обычная процедура и написание метода для класса вобще неуместно. |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Нужен кодер, чтобы пофиксить ошибку Wordpress после переноса сайта | 0 | Alex-777 | 936 | 7.4.2024, 18:05 автор: Alex-777 |
|
Состояние после ампутации - нужна помощь благотворительный топик |
49 | vitvirtual | 5894 | 1.4.2024, 5:23 автор: vitvirtual |
|
Исчезающие фрилансеры после предоплаты. Зачем? Какой смысл? | 36 | metvekot | 9586 | 31.3.2024, 1:01 автор: Liudmila |
|
После обновления all in one seo pack пропал keywords? | 16 | pozitron123 | 3541 | 24.2.2021, 15:13 автор: kozak199110 |
|
После переноса сайт на DLE перестал корректно работать Ищу того, кто может помочь заново все верно настроить |
6 | mr_LasVegas | 2002 | 20.7.2020, 20:52 автор: asd4 |
Текстовая версия | Сейчас: 24.4.2024, 15:11 |