С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
1 / 1 / 1
Регистрация: 04.08.2011
Сообщений: 228

База данных - вывод в шорткод (Wordpress)

02.11.2015, 01:59. Показов 3228. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет
Помогите пожалуйста дописать скрипт
Есть сайт на вордпрес, возникла необходимость создать шорткод для быстрого вывода необходимых данных из базы на любую страницу сайта

В базе у меня таблица с ценами:
Название
Цена

m100 m150 m200 m300 m400
1000 2000 3000 4000 5000



PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
   require_once($_SERVER[DOCUMENT_ROOT]."/wp-content/themes/kora/tables.php"); // ПОДКЛЮЧЕНИЕ ЯДРА
    $db = new MyDB();
    $db->connect();
     
     //СОЗДАНИЕ ШОРТКОДА
     
    function m100(){
    $result = mysql_query(" SELECT * FROM employees1");
     mysql_close();
     while($row = mysql_fetch_array($result))
    echo "Марка 100: ".$row['m100']."<br>";
       
     }
     
    add_shortcode('m100', 'm100');



Код выше выводит в шорткод значение 1000 из столбца m100

Как по аналогии сделать тоже самое с остальными столбцами в правильном виде)?

Добавлено через 2 часа 3 минуты
P.S может можно занести данные в массив и потом в кажой функции вызывать нужный столбец?

Добавлено через 45 минут
Что то типо этого

PHP
1
2
3
4
5
6
7
8
9
 while($row = mysql_fetch_array($result))
 
{
    $arr_m100 = $row['m100'];
    $arr_m150 = $row['m150'];
    $arr_m200 = $row['m200'];
}
 
echo "Марка 100: ".$arr_m100."<br>";
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.11.2015, 01:59
Ответы с готовыми решениями:

Как засунуть в переменную полученный шорткод в Wordpress?
есть код: //шорткоды function vivod_sort(){ ob_start(); include_once ('includes/m/shortkod.php'); ...

Как по нажатию на кнопку вызвать шорткод? - WordPress php
Главная задачf прикрутить форму для отправки писем и обеспечить их доставляемость (отправку). Также у меня есть шорт код от плагина...

Вывод кода из html файла через шорткод
Есть файл по сути html (kalendar3.php), содержащий форму. Есть файл плагина, создающий функцию шорткода с этой формой. В итоге не работает....

7
 Аватар для kolesnikov
15 / 15 / 10
Регистрация: 23.03.2013
Сообщений: 101
02.11.2015, 02:03
PHP
1
2
3
4
5
6
7
8
9
 function mAny($item){
    $result = mysql_query(" SELECT * FROM employees1");
     mysql_close();
     while($row = mysql_fetch_array($result))
    echo "Марка  ".$row[$item]."<br>";
       
     }
     
    add_shortcode('many', 'mAny');
[many item="m100"]
1
1 / 1 / 1
Регистрация: 04.08.2011
Сообщений: 228
02.11.2015, 21:55  [ТС]
К сожалению данный код не работает
Выводит только слово Марка
0
 Аватар для kolesnikov
15 / 15 / 10
Регистрация: 23.03.2013
Сообщений: 101
03.11.2015, 01:09
$item попадает в функцию?
$result содержит такую строку?
0
1 / 1 / 1
Регистрация: 04.08.2011
Сообщений: 228
03.11.2015, 18:53  [ТС]
Выводит значение, которое мы написали в foo=''
[bartag foo='m100'][/bartag]

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
function bartag_func( $atts ) {
 $result = mysql_query(" SELECT * FROM employees1");
     mysql_close();
     while($row = mysql_fetch_array($result))
 
extract( shortcode_atts( array(
    'foo' => $row['m100'],
    
), $atts, 'bartag' ) );
 
return 'Марка: ' . $foo . '';
 
}
А нужно чтобы при указании параметра 'm100' выводились данные из базы принадлежащие столбцу 'm100'

Добавлено через 20 минут
Если в шорткоде [bartag foo='m100'][/bartag] удалить foo='m100' то значения берутся по умолчанию из 'foo' => $row['m100'] а в базе данных в столбце m100 стоит 2750
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
03.11.2015, 21:45
может как-то так?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
function bartag_func( $atts ) 
{
    $result = mysql_query(" SELECT * FROM employees1");
    extract( shortcode_atts( array(
                    'foo' =>'',
                ), $atts,'bartag' ) );
    
    $row = mysql_fetch_array($result);
    mysql_close();
    
    return 'Марка: ' . $row[$foo] . '';
   
}




PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// [bartag foo='m100,m200,m300,m400'][/bartag]
function bartag_func( $atts ) 
{
    $result = mysql_query(" SELECT * FROM employees1");
    extract( shortcode_atts( array(
                    'foo' =>'',
                ), $atts,'bartag' ) );
    
    $row = mysql_fetch_array($result);
    mysql_close();
    $arr_item = explode(',',$foo);
    $count = count($arr_imem);
    $list = '';
    for($i=0;$i<$count;$i++)
    {
        $list .= "Марка: '" . $row[$arr_item[$i]] ."'";
    }
    return $list;
   
}
1
1 / 1 / 1
Регистрация: 04.08.2011
Сообщений: 228
03.11.2015, 22:03  [ТС]
Второй вариант ничего не отображает(

У вас идет перечисление [bartag foo='m100,m200,m300,m400'][/bartag]

С таким вариантом будет: Марка: 1000, 2000, 3000, 4000, 5000 (через запятые)

У меня на странице прайс-лист в табличном виде и вариант подойдет такой:

[bartag foo='m100'][/bartag]
[bartag foo='m200'][/bartag]
[bartag foo='m300'][/bartag]
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
03.11.2015, 22:15
Цитата Сообщение от fanatikus Посмотреть сообщение
$count = count($arr_imem);
опечатался
PHP
1
$count = count($arr_item);
Цитата Сообщение от ZverBlin Посмотреть сообщение
С таким вариантом будет: Марка: 1000, 2000, 3000, 4000, 5000 (через запятые)
если добавить перенос строки сюда
PHP
1
2
 $list .= "Марка: '" . $row[$arr_item[$i]] ."'";
 $list .= "Марка: '" . $row[$arr_item[$i]] ."<br>'";
будет
Марка: 1000
Марка: 2000
Марка: 3000 и т.д.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.11.2015, 22:15
Помогаю со студенческими работами здесь

Вывод данных из таблицы бд, на страницу wordpress
День добрый возникла такая проблема. Создал таблицу в бд с определенными данными, как мне эти данные вывести на страницу wordpress в вите...

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

SWI Prolog ввод-вывод и база данных
Задание: Первый игрок вводит в базу 5 чисел первого десятка, второй пытаясь угадать, какие числа ввел первый, вводит свои 5 и выигрывает...

База данных - поиск по textboxам и вывод результата в picturebox
Как сделать поиск по textboxам и вывод результата в picturebox?

База данных - вывод информации при нажатии клавиши
Uses Crt, Graph; Const r2=30; Var r,w,t,x,y: integer; c,j,k:char; e:boolean; Procedure prim; Begin {procedure} ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru