Код (Text): <?php $a = isset($_GET['red_id']) ? $product['Card_number_of_patients']: ''; $b = 1; if ($a >= $b) { while ($result = mysqli_fetch_array($sql)) { echo '<tr>' . "<td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value="<?= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ?>"></td>" . '</tr>'; } } elseif ($a == $b) { echo "Траляля"; } else { echo "Трололо"; } ?> Проблема вот здесь я перепробовал все что знаю, вставить HTML который в PHP не получается. Не могу понять как правильно в echo вставить HTML код з PHP внутри. Код (Text): "<td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value="<?= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ?>"></td>" . так как я понимаю в PHP вставить опять же PHP нельзя. Как правильно в таких случаях переключаться з PHP на HTML или это проблема в echo и там какие то особенные правила синтаксиса?
@Asteroth, никаких проблем не будет если выучить базовую теорию языка и его синтаксис. Просто открой любую книгу по РНР и дело в шляпе.
А сказать в чом имено проблема сложно? Как буто я не читал инфу... так не работает Код (Text): "<td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value=".= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ."></td>" . и так не работает Код (Text): '<td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value=".= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ."></td>' . и так не работает Код (Text): '<td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value=" '.= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; .' "></td>' . и еще куча вариантов но оказалось для старих версий, у меня версия PHP Version 7.1.22. чисто без echo работает, но его надо вставить в цыкл. Код (Text): <td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value="<?= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ?>"></td> Люди пишут на форуме наверное не просто так. Ответ на форуме для новичков в стиле иди книжки почитай, не адекватный. Прошу модераторов принять во внимание.
Все там есть. Конкретно про строки см. Ну и не забывай, что в echo можно список использовать: echo ..., ..., ...;
Нет нет, вывод у меня есть и все работает, там я разобрался, мне надо пример как сделать input в цыкле, но что бы в этот input еще и подгружалась информация с базы. в данной строчке Код (Text): <td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value="<?= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ?>"></td> вот этот скрипт грузит з базы данные. там где value=" Код (Text): <?= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ?> Но echo на него ругается именно на синтаксыс. я и точки ставил Код (Text): .= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : '';. и лапки и душки и что тока не ставил. но все мимо. По этому не могу понять что не так.
PHP: <?php $product = ''; if( isset( $_GET['red_id'] ) ) { $product = $product['Card_Head_Of_The_Brigade']; } echo '<td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value=" ' . $product . ' "></td>'; ?>
Нужно мозги включать. В первом примере у тебя и обрамляющие кавычки, и внутри строки одинаковые. Нужно либо разные использовать, либо делать экранирование. Либо см. расширенные синтаксисы определения строк (heredoc, nowdoc). Говорю, на оформление шаблонов обрати внимание.
@Artur_hopf, ты натыкал пробелов в значение value для пущей важности? --- Добавлено --- И в отличии от ТСа ты походу даже про тернарный оператор не слыхал. Когда видишь что-то непонятное, заглядывай в справочник
@Asteroth, тебе уже сказали про альтернативный синтаксис, но можно и без него. Попробуй всё что содержит html теги выводить не через echo, а напрямую. Чтение книг - это самый прямой и быстрый способ разобраться в проблеме. Но если тебе быстро и легко не надо, можешь слоняться по форумам и "собирать" обрывки нужной информации, а потом лепить "горбатого к стенке"
P.S. «Тернарник» можно прямо в echo запихнуть. Чтобы не повышать его приоритет скобками, можно использовать перечисление вместо конкатенации. --- Добавлено --- Это как? Или ты про мое «и т.п.» (в частности <?=)?
да, только лично я альтернативный синтаксис не люблю, мне скобки ближе, да и подсветка в редакторе со скобками работает корректнее
@Valick, тут дело не в «люблю-не люблю». А в удобстве/технологичности. Мне тоже этакая громоздкость, может, не нравится. Но спроси любого верстальщика, что ему удобнее. А после терпи
пробувал вот так. Код (Text): 'td align="left" valign="top"><p style="margin-left: 5px"><input type="text" size="30" name="Card_Head_Of_The_Brigade" value=".= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ."></td>' . Он стал частично робочий, но тогда ему ['red_id'] не нравиться. По этому и стал уже думать как все это вынести из строчки, но тут Artur_hopf помог.
Не, ему не нра, когда проггеры тупят --- Добавлено --- --- Добавлено --- В общем успехов. Как научишься слушать, обращайся.
PHP: <?php $a = isset($_GET['red_id']) ? $product['Card_number_of_patients']: ''; $b = 1; if ($a >= $b) { while ($result = mysqli_fetch_array($sql)) {?> <tr> <td align="left" valign="top"> <p style="margin-left: 5px"> <input type="text" size="30" name="Card_Head_Of_The_Brigade" value="<?= isset($_GET['red_id']) ? $product['Card_Head_Of_The_Brigade'] : ''; ?>"> </p> </td> </tr> <?php } } elseif ($a == $b) { echo "Траляля"; } else { echo "Трололо"; } ?>
Надо избегать html внутри строковых констант. PHP специально был придуман, чтоб его вставляли в html, поэтому там куча приёмов, с которых любая нормальная книжка начинается по php. https://www.php.net/manual/ru/language.basic-syntax.phpmode.php - читаем. вникаем..
Спасибо. Пробувал <html> вставлять в php как в душки, а наоборот даже в голову не приходило.. Очень полезная информация. Есть же хорошие люди.
Вот это я пропустил. Вот можна ведь направить на путь истины, дать сылку на инфу которую пропустил, а не посылать иди книжки почитай.. Мне кажеться, для этого ведь форум новичков предназначен... И за этой подсказкой я и приходил. Потому как перелопатил кучу информации, а такой простой способ в голову не приходил. Точней не знал как правильно сформулировать запрос. Писал как вставить html в php. Но то что можна не полный php вставлять в html, не знал. Спасибо буду знать.
Именно об этом я и говорил, достаточно прочесть одну книгу, а не лопатить кучу информации. Так это повезло, что модератор не успел "принять меры" в отношении меня
Ага, прямо-таки пропустили Это самый первый раздел в официальной документации https://www.php.net/manual/ru/langref.php