Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
1 / 1 / 0
Регистрация: 22.05.2015
Сообщений: 31
1
MySQL

Как вывести нужное значение из таблицы БД?

22.05.2015, 14:29. Показов 3970. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите разобраться с добавлением новых полей в регистрационную форму k2 в joomla. Я почти закончил, осталось мелочь.
Сразу скажу, в php я ноль.

Сейчас доп.поля уже добавлены в регистрационную форму и успешно передают данные в БД при заполнении, но есть большая проблема. Я не силен в php и не знаю, как вывести эти данные на страницу пользователя. Проблема в том, что нужно, что бы эти данные видел не только пользователь, но и те, кто просматривают его страницу.

Для это, мне нужно как то создать условие.
В общем вот код, который выводит доп. поле созданное мной на странице профиля:
PHP
1
2
3
4
5
6
7
$result = mysql_query("SELECT surname FROM jom_k2_users WHERE userID=50");
$myrow = mysql_fetch_array($result);
 
do {
    echo $myrow[surname];
}
while ($myrow = mysql_fetch_array($result));
Но как видите, код выводит только доп.поле surname пользователя с id 50, а мне нужно, что бы он выводил доп.поле пользователя, в профиле которого ты находишься.

Далее, обнаружил, что код:
PHP
1
echo $this->user->name;
выведет имя пользователя из таблицы jom_users. Идентичная информация находится в jom_k2_users в поле userName.
Соответственно попробовал сделать так:
PHP
1
2
3
4
5
6
7
8
9
10
//попытка создать условие
// Вывести доп.поле surname из таблицы jom_k2_users там где userName= $MySur:
$MySur = $this->user->name;
$result = mysql_query("SELECT surname FROM jom_k2_users WHERE userName= $MySur"); 
$myrow = mysql_fetch_array($result);
 
do {
    echo $myrow[surname];
}
while ($myrow = mysql_fetch_array($result));
Этот код привел к ошибке. Я просто не разбираюсь в php и мне нужен тот, кто подскажет, как сделать то, что я хочу.
Если я разберусь, то выложу полный гайд, пошаговый, как сделать доп. поля в регистрации k2.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2015, 14:29
Ответы с готовыми решениями:

Как взять нужное значение из таблицы?
День добрый! Пытаюсь сделать электронный журнал в ВУЗ, т.к. система подсчётов конечного балла и...

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

Не получается вывести нужное значение в dbedit
Собственно кидаю на форму сурс, адоквери, конекчусь к базе. Есть две таблицы, в первой 7...

Как выбрать из определённой таблицы нужное число1 ?
помогите с формулой.

5
60 / 55 / 20
Регистрация: 01.04.2013
Сообщений: 551
22.05.2015, 22:38 2
Цитата Сообщение от googlonator Посмотреть сообщение
PHP
1
2
3
4
5
6
$result = mysql_query("SELECT surname FROM jom_k2_users WHERE userID=50");
$myrow = mysql_fetch_array($result);
do {
   echo $myrow[surname];
}
while ($myrow = mysql_fetch_array($result));
PHP
1
2
3
4
5
6
$result = mysql_query("SELECT * FROM jom_k2_users WHERE userName= $MySur"); 
$myrow = mysql_fetch_array($result);
 
while $myrow = mysql_fetch_array($result){
    echo $myrow[surname];
}
PHP
1
echo $myrow['сюда вставляй название поля из БД'];
0
1 / 1 / 0
Регистрация: 22.05.2015
Сообщений: 31
23.05.2015, 00:45  [ТС] 3
Спасибо за попытку, но нет. Код вообще почему выдаёт ошибку.

Мне кажется не все понимают, основную поставленную задачу.
Грубо говоря, мне надо создать условие, где должно происходить следующее:
Вывести на странице значение поля surname из таблицы jos_k2_users только там, где данные из поля userName таблицы jos_k2_users будут совпадать с данными из поля name таблицы jos_users
т.е. Надо взять, сравнить данные из двух разных таблиц и при совпадении данных, вывести нужное поле из таблицы.

Может это вообще даже близко не стоит к тому коду, что я привел. Повторюсь, в php я чайник и не знаю, как это реализовать.
0
2 / 2 / 0
Регистрация: 09.04.2014
Сообщений: 21
23.05.2015, 07:51 4
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 
$connect = mysqli_connect('сервер','логин','••••••','название БД');
 
$sql = "ЗАПРОС СЕЛЕКТА";
$result = mysqli_query($connect,$sql,MYSQLI_STORE_RESULT);
$bd = mysqli_fetch_assoc($result);
 
/*
$db теперь является массивом.
При получении из таблицы значений
чтобы не запутаться берите по одной
строке.
$db['login'] - где 'login' - название столбца.
*/
 
?>
0
1 / 1 / 0
Регистрация: 22.05.2015
Сообщений: 31
23.05.2015, 12:51  [ТС] 5
Спасибо, как попробую -отпишусь.

Добавлено через 2 часа 28 минут
Поэксперементировал и вот к чему пришел:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
        <?php
$Fer = $this->user->name; /* это имя пользователя на странице которого мы находимся(joomlo'вский код) */
$result = mysql_query("SELECT surname FROM jos_k2_users"); /*выбираем поле surname из таблицы jos_k2_users
$myrow = mysql_fetch_array($result);
 
do{
    if ($myrow[userName]=$Fer) /*Попытался создать условие: Если поле userName равно $Fer то...*/
    {
    echo $myrow[surname]."<br>";/*вывести строку surname там, где выполнилось условие (но почему то выводит все строки )*/
}
}
while ($myrow = mysql_fetch_array($result));
        ?>
Этот код выводит все строки из поля surname. Осталось только правильно сформулировать условие, что бы выводило, только при совпадении
PHP
1
$myrow[userName]=$Fer
Честно говоря, не понимаю, почему этот код не работает.

Добавлено через 7 минут
В сообщении выше случайно закоментировал лишние строки. Вот правильный вариант:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
        <?php
$Fer = $this->user->name; /* это имя пользователя на странице которого мы находимся (joomlo'вский код)*/
$result = mysql_query("SELECT surname FROM jos_k2_users"); /*выбираем поле surname из таблицы jos_k2_users*/
$myrow = mysql_fetch_array($result);
 
do{
    if ($myrow[userName]=$Fer) /*Попытался создать условие: Если поле userName равно $Fer то...*/
    {
    echo $myrow[surname]."<br>";/*вывести строку surname там, где выполнилось условие (но почему то выводит все строки )*/
}
}
while ($myrow = mysql_fetch_array($result));
        ?>
0
60 / 55 / 20
Регистрация: 01.04.2013
Сообщений: 551
24.05.2015, 10:18 6
PHP
1
[quote="googlonator;7656353"]if ($myrow[userName]=$Fer) /*Попытался создать условие: Если поле userName равно $Fer то...*/[/quote]
Улыбнуло !!!!
PHP
1
$myrow[userName]=$Fer
Если ровняется то вам
PHP
1
==
вот такое нужно делать, а вообще что-то делать нужно хотя бы понимать чуток язык (любой программирования)
0
24.05.2015, 10:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.05.2015, 10:18
Помогаю со студенческими работами здесь

Как выбрать из определённой таблицы нужное число?
помоги с формулой.

Как вывести из таблицы значение?
Всем лучей добра. Ребята, подскажите как вывести значение для залогиненного юзера, из ячейки...

Как передать нужное значение?
Снова туплю над задачкой. Подскажите если у кого есть какие мысли. function FunctionArray(count)...

Как в форме вывести значение поля таблицы
Как на одной странице вывести значения всей таблицы. Но не в виде таблицы, а чтобы красиво было.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru