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

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

Есть два 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
209
#1
suliko-05 :
Я хочу вторую конструкцию вставить в первую  конструкцию вместо цифры 1

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

"...`id`='" . the_field('id_tov') . "'"
Хостинг FOZZY ( https://u75.ru/fozzy ) / Выслушаю предложения на домены ( https://u75.ru/domains-for-sale ) / Домены и скрипт для коротких ссылок ( https://u75.ru/domains-for-shortcuts )
ArbNet
На сайте с 27.10.2019
Online
98
#2
$sql=$mi->query("select `articul`,`cena` from `$table` where `id`='".the_field('id_tov')."'");
Покажи мне свой исходник и я скажу кто ты :) RUTUBE https://rutube.ru/channel/26248426 YouTube https://youtube.com/channel/UC0d4Gir8ySkqViRRtEJOiyQ
M
На сайте с 04.12.2013
Offline
209
#3

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

"...`id`='{$the_field('id_tov')}'"
IL
На сайте с 20.04.2007
Offline
418
#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
209
#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
1663
#8
Дикий пионер #:
Скорее всего это из wordpress'а - там такие есть.

При  wordpress и юзать 

$sql=$mi->query

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

✅ Трастовых площадок под размещение статей и ссылок. Опыт 15 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Новый аналог AllSubbmitter https://getmanylinks.ru/getmanysubmits.html (Бесплатное демо)
M
На сайте с 04.12.2013
Offline
209
#9
LEOnidUKG #:

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

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

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

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