Вставка php кода в конструкцию php кода

S0
На сайте с 31.10.2020
Offline
3
204

Есть два php кода.

Первый

<?php
$sql=$mi->query("select `articul`,`cena` from `$table` where `id`='1'");
$result=$sql->fetch_array();
echo "<p>$result[articul]</p>";
echo "<p>$result[cena]</p>";
?>

Второй:

<?php the_field('id_tov'); ?>

Я хочу вторую конструкцию вставить в первую  конструкцию вместо цифры 1, чтобы получилось так

<?php
$sql=$mi->query("select `articul`,`cena` from `$table` where `id`='<?php the_field('id_tov'); ?>'");
$result=$sql->fetch_array();
echo "<p>$result[articul]</p>";
echo "<p>$result[cena]</p>";
?>

Но пишет ошибка. Что делать?

M
На сайте с 04.12.2013
Offline
223
#1
suliko-05 :
Я хочу вторую конструкцию вставить в первую  конструкцию вместо цифры 1

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

"...`id`='" . the_field('id_tov') . "'"
Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
ArbNet
На сайте с 27.10.2019
Offline
124
#2
$sql=$mi->query("select `articul`,`cena` from `$table` where `id`='".the_field('id_tov')."'");
Обсуждение разработки на моём фреймворке https://discord.gg/23N4s9x2kp
M
На сайте с 04.12.2013
Offline
223
#3

P.S. Также, если имя ф-ции или саму ф-цию (замыкание) предварительно сохранить в какой-то переменной, то можно с помощью фигурных скобок:

"...`id`='{$the_field('id_tov')}'"
IL
На сайте с 20.04.2007
Offline
435
#4
<?php the_field('id_tov'); ?>

По всей видимости, the_field не возвращает результат, а выводит (печатает) его.. Чтобы вернуть результат для дальнейшего использования в конкатенации, используется get_field

"...`id`='" . get_field('id_tov') . "'"

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
M
На сайте с 04.12.2013
Offline
223
#5
ivan-lev #:
По всей видимости, the_field не возвращает результат, а выводит (печатает) его.

Это вполне возможно, но у ТСа ф-ция была указана по сути сама по себе. Я поэтому задал уточняющий вопрос, прежде чем дать мой вариант решения.

ivan-lev #:
Чтобы вернуть результат для дальнейшего использования в конкатенации, используется get_field
Это какие-то известные ф-ции? А то по поводу окружения я у ТСа ничего не видел.
ДП
На сайте с 23.11.2009
Offline
203
#6
miketomlin #:
Это какие-то известные ф-ции?
Скорее всего это из wordpress'а - там такие есть.
igor3310
На сайте с 27.02.2011
Offline
138
#7

Да the_field() выводит  а вот get_field()  просто получает данные (он и нужен) -  тогда правильно так:


<?php
$sql=$mi->query("select `articul`,`cena` from `$table` where `id`='".get_field(id_tov)."'");
$result=$sql->fetch_array();
echo "<p>$result[articul]</p>";
echo "<p>$result[cena]</p>";
?>
Веб разработка WordPress, OpenCart, Modx Revo и прочее - https://searchengines.guru/ru/forum/1040224
LEOnidUKG
На сайте с 25.11.2006
Offline
1724
#8
Дикий пионер #:
Скорее всего это из wordpress'а - там такие есть.

При  wordpress и юзать 

$sql=$mi->query

Как-то весьма странно.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
M
На сайте с 04.12.2013
Offline
223
#9
LEOnidUKG #:

При  wordpress и юзать...

Как-то весьма странно.

У меня как раз поэтому и не срослось. А то что в WP есть всякие the_* я знал, хотя конкретно про the_field и не помнил.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий