2014-11-24 4 views
0

Следующие работы прекрасно отображают исходное изображение.HTML внутри условия php

<html> 
<h3>First Test</h3> 
<img src="example1.php" /> 
</html> 

Но я хотел, чтобы проверить пользователя, то только показать исходное изображение, как следующий,

<html> 
<h3>First Test</h3> 

<?php 
some logic = $usermatch 
if($usermatch) 
<img src="example1.php" /> 
?> 

</html> 

Когда я пытаюсь то же самое, что просто не показывает изображение и не принимает <img src="example1.php" /> внутри PHP код.

Я новичок и просто изучаю php и html.

Не могли бы вы посоветовать мне, как заставить его работать?

Спасибо.

+0

Google «PHP альтернативный синтаксис» – thatidiotguy

+2

'echo '';' будет решать вашу проблему, но вам определенно нужно f ollow советуем google «альтернативный синтаксис PHP». – mudasobwa

ответ

3

Вы должны переключиться в и из режима PHP

<html> 
<h3>First Test</h3> 

<?php if($usermatch) { ?> 
    <img src="example1.php" /> 
<?php } ?> 

</html> 

А некоторые любят использовать эхо-заявление, но вы увидите, что вы получите меньше помощи от редакторов при редактировании HTML-

<html> 
<h3>First Test</h3> 

<?php 

if($usermatch) 
    echo '<img src="example1.php" />'; 
?> 
+0

Это единственный ответ, говорящий о самом простом решении (эхо), а также о самом простом решении. – Mark

+0

@Mark Я помещаю 'echo' там, но я думаю, что это затрудняет чтение, обратите внимание, что синтаксис HTML не подсвечивается должным образом в приведенном выше фрагменте. –

+0

Я обсуждал эхо-сигнал, но почувствовав, что закрытие/повторное открытие было связано с тем, что он пытался сделать. – MrGlass

3

Небольшое изменение в вашем коде, хотя это довольно уродливый способ сделать это.

<?php 
some logic = $usermatch 
if($usermatch) { 
?> 
<img src="example1.php" /> 
<?php 
} 
?> 
+1

Спасибо, его работа! – Nick

1

Не пропустите PHP закрытия и открытия метки. Попробуйте что-то вроде этого

<?php 
some logic = $usermatch 
if($usermatch) : ?> 
<img src="example1.php" /> 
<?php 
endif; 
?> 
0

Попробуйте это:

<?php 
some logic = $usermatch 
if($usermatch) { ?> 
    <img src="example1.php" /> 
<?php 
} 
?> 

Проблема в том, что вы смешиваете HTML-код HTML &. Совершенно легко получить HTML-код в вашем PHP-файле, но вам нужно закрыть блок кода PHP раньше, чтобы интерпретатор понял, что это не код, который вы собираетесь запускать.

+0

Спасибо большое, это сработало. – Nick

+0

@Nick Нет проблем и приветствуется PHP программирование – MrGlass

0

Мог бы также добавить все ответы:

<html> 
<h3>First Test</h3> 

<?php echo $usermatch ? '<img src="example1.php" />' : ''; ?> 

</html> 
0

Используйте следующее:

<html> 
<h3>First Test</h3> 

<?php 
    some logic = $usermatch 
    if($usermatch) { 
     print '<img src="example1.php" />' 
    } 
?> 

</html> 

или вы можете использовать другой способ печати HTML-теги в PHP:

<html> 
<h3>First Test</h3> 
<?php 
some logic = $usermatch 
     if($usermatch) { 
?> 
<img src="example1.php" /> 
<?php } ?> 
</html> 
+0

Спасибо, его работа! – Nick

Смежные вопросы