PHP эхо не в кавычках - PullRequest
       25

PHP эхо не в кавычках

0 голосов
/ 17 ноября 2010

Вот код:

<form method="POST" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">

Он отображается в формате HTML: <form method="POST" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">

PHP работает на остальной части моего кода, но этот заставляет меня чесать голову

РЕДАКТИРОВАТЬ:

Вот код для его отображения:

<?
$AssignedTo = $_POST['id'];
if (isset ($_POST['submit'])) // if the form was submitted, display their name
{
// Action to be completed once the form is submitted
}
else // form hasn't been submitted, so display the form
{
echo '<form method="POST" action="<?php echo $PHP_SELF; ?>" enctype="multipart/form-data">
<h2>**** - Add </h2>
</form>';
}
?>

Ответы [ 6 ]

2 голосов
/ 17 ноября 2010

Поскольку вы уже выводите строку, ее перенос в другой блок PHP не нужен и не будет проанализирован

<?
$AssignedTo = $_POST['id'];
if (isset ($_POST['submit'])) // if the form was submitted, display their name
{
// Action to be completed once the form is submitted
}
else // form hasn't been submitted, so display the form
{
echo '<form method="POST" action="'.$PHP_SELF.'" enctype="multipart/form-data">
<h2>**** - Add </h2>
</form>';
}
?>

Это должно работать.

1 голос
/ 17 ноября 2010

Разве это не должно быть <?php, а не <??

Что произойдет, если вы используете

<? echo "action='".$PHP_SELF."'"; ?>

(То есть вы оборачиваете действие внутри эха)?

Использование одинарных кавычек '' заставляет PHP complier обрабатывать все это как буквальную строку, поэтому он никогда не будет отображать переменную, на которую ссылается $ PHP_SELF, а настоящую строку "$ PHP_SELF"

(Также у вас есть вложенные теги PHP? Это не имеет смысла)

echo '<form method="POST" action="'.$PHP_SELF.'" enctype="multipart/form-data">
<h2>**** - Add </h2>
</form>';

Альтернативный метод:

printf('<form method="POST" action="%s" enctype="multipart/form-data">
<h2>**** - Add </h2>
</form>', $PHP_SELF);
0 голосов
/ 17 ноября 2010

Не вставляйте открытые теги PHP в сам PHP

echo '<form method="POST" action="',$PHP_SELF,'" enctype="multipart/form-data">
0 голосов
/ 17 ноября 2010

Работает ли <<code>?php .... ?>?

Синтаксис <? настраивается: http://www.php.net/manual/en/language.basic-syntax.phpmode.php

0 голосов
/ 17 ноября 2010

Вы уверены, что короткие теги могут выполнять php?

0 голосов
/ 17 ноября 2010

При первом использовании <?php также проверьте открытые кавычки в предыдущем коде. Если вы разместите остальную часть кода будет проще.

Вложенные теги PHP очень неправильные:

<?php
$AssignedTo = $_POST['id'];
if (isset ($_POST['submit'])) // if the form was submitted, display their name
{
// Action to be completed once the form is submitted
}
else // form hasn't been submitted, so display the form
{
echo '<form method="POST" action="'.echo $PHP_SELF.'" enctype="multipart/form-data">
<h2>**** - Add </h2>
</form>';
}
?>
...