SHKD
@SHKD

Как вставить кусок кода php без ошибки?

Мне необходимо заменить Show: на <?php echo myvalidate($LANG['g_00055']); ?> но как только не пробовал все время выдает ошибку.
КОД:
function display_items_per_page() {
        $items = '';
        if (!isset($_GET['ipp']))
            $this->items_per_page = $this->default_ipp;
        foreach ($this->ipp_array as $ipp_opt)
            $items .= ($ipp_opt == $this->items_per_page) ? "<option selected value=\"$ipp_opt\">$ipp_opt</option>" : "<option value=\"$ipp_opt\">$ipp_opt</option>";
        return "<span class=\"text-muted\">Show:</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='$_SERVER[PHP_SELF]?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";
    }
  • Вопрос задан
  • 143 просмотра
Решения вопроса 2
попробуйте так:
return "<span class=\"text-muted\">".myvalidate($LANG['g_00055'])."</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='$_SERVER[PHP_SELF]?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";
Ответ написан
Комментировать
ev_g
@ev_g
Web dev.
Тебе нужно либо закрывать двойные кавычки, добавлять строку и открывать, либо взять переменную в {}.

Пример 1:
return "<span class=\"text-muted\">Show:</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='" . $_SERVER['PHP_SELF'] . "?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";


Пример 2:
return "<span class=\"text-muted\">Show:</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='{$_SERVER['PHP_SELF']}?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";


Если нужно вставить вызов функции то только разрывать строку:

return "<span class=\"text-muted\">" . myvalidate($LANG['g_00055']) . "</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='" . $_SERVER['PHP_SELF'] . "?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";


И отдельно порекомендую не городить вывод с таким количеством кавычек. Это усложняет правки и разбор кода. Делай простой структурированный вывод html с вставкой нужных php переменных.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы