如何编写已经在php echo中的$ _SERVER [" PHP_SELF"]

时间:2014-05-21 20:51:44

标签: php self

我有一个用PHP编写的表单,它会自动调用页面(我不知道我是否说得对。)

echo('</table>
<hr>
<h1 id="loadscript_h1">Voeg een loadscript toe</h1>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST" enctype="multipart/form-data">
<div><input type="file" name="loadscript" id="loadscript" value="Kies loadscript"/></div>');
echo ('<input type="submit" class="formsubmit" name="upload_loadscript" value="Upload loadscripts" />
</form>');

但是当我查看我的网站时,会有类似的内容:

" method="POST" enctype="multipart/form-data">

我该如何正确地写这个?

2 个答案:

答案 0 :(得分:0)

你必须使用串联连接。注意&#39;。告诉PHP终止字符串,然后连接以下内容。请参阅文档:http://www.php.net/manual/en/language.operators.string.php

echo '</table>
<hr>
<h1 id="loadscript_h1">Voeg een loadscript toe</h1>
<form action="'.htmlspecialchars($_SERVER["PHP_SELF"]).'" method="POST" enctype="multipart/form-data">
<div><input type="file" name="loadscript" id="loadscript" value="Kies loadscript"/></div><input type="submit" class="formsubmit" name="upload_loadscript" value="Upload loadscripts" />
</form>';

另外,你不需要用于回声的括号。

答案 1 :(得分:0)

使用PHP Heredoc

$action = htmlspecialchars($_SERVER["PHP_SELF"]);
$form = <<<FORM
    </table>
    <hr>
    <h1 id="loadscript_h1">Voeg een loadscript toe</h1>
    <form action="{$action}" method="POST" enctype="multipart/form-data">
    <div><input type="file" name="loadscript" id="loadscript" value="Kies loadscript"/></div>
    <input type="submit" class="formsubmit" name="upload_loadscript" value="Upload loadscripts" />
    </form>
FORM;

echo $form;

您也可以将操作字段留空,表单会在发布时自行提交。