以下PHP字符串的輸出不正確。它顯示額外的(「>)在結束請幫助那些自己做錯了什麼,我做PHP字符串連接問題
$part2 = HTMLentities('<input type="hidden" name="custom" value="<?php print($_SESSION["muser"]."-".$_SESSION["mpass"]);?>">');
print $part2;
感謝,KRA
以下PHP字符串的輸出不正確。它顯示額外的(「>)在結束請幫助那些自己做錯了什麼,我做PHP字符串連接問題
$part2 = HTMLentities('<input type="hidden" name="custom" value="<?php print($_SESSION["muser"]."-".$_SESSION["mpass"]);?>">');
print $part2;
感謝,KRA
如果您在PHP模式是已經,您應該只使用字符串連接而不是<?php ?>
語法;這個例子分割了HTML創建和逃逸部分
$html = '<input type="hidden" name="custom" value="' . htmlspecialchars($_SESSION["muser"] . "-" . $_SESSION["mpass"]) . '">';
$part2 = htmlentities($html);
print $part2;
這是因爲有一個額外>末 試試這個:?
$part2 = HTMLentities('<input type="hidden" name="custom" value="<?php print($_SESSION["muser"]."-".$_SESSION["mpass"]);?>"');
print $part2;
它是輸入標籤結束標記。如果我刪除它,它不起作用。 – KRA 2013-02-10 15:09:28
我認爲這更多的是你在找什麼:
$part = '<input type="hidden" name="custom" value="' . htmlentities($_SESSION['user'] . '-' . $_SESSION['mpass']) . '" />';
你有很多可憐的PHP語法在你的例子。
<?php
標籤將HTML轉換爲PHP。當你有一個PHP文件時,你可以考慮的一種方法就是你真的有一個HTML文檔 - 但你可以添加<?php
標籤來編寫PHP代碼。在你的例子中,你試圖從內部打印HTML PHP,它可以承認複雜。您已經在PHP塊中,因此您不需要使用開頭的<?php
標籤。print
函數。 print
函數用於將文本寫入屏幕。您可以像我在編寫的示例中那樣使用變量名稱來組合字符串。htmlentities
用於將字符串中的任何HTML呈現爲文本。我們使用htmlentities
來保留未知(用戶輸入的)數據來修改我們的HTML。像上面所做的那樣,在$ _SESSION變量上使用htmlentities是一個好主意,以確保它們不會破壞帶有無效HTML的input
標記。在整個字符串上使用它只會打印您的HTML,就像它是原始文本一樣。下面是它從一個PHP塊之外編寫方式:
<?php
// initial PHP code
?>
<input type="hidden" name="custom" value="<?php echo htmlentities($_SESSION['user'] . '-' . $_SESSION['mpass']) ?>" />
<?php
// continue PHP code
?>
謝謝,它正在工作... – KRA 2013-02-10 16:05:12