【发布时间】:2016-01-23 20:46:56
【问题描述】:
您好,我对 php 中的复选框有疑问。我知道如何获取每个复选框的值,但在这种情况下,值应该将样式应用于输入文本。我到现在的代码是这样的:
<?php
$negrita = 'unchecked';
$cursiva = 'unchecked';
$subrayado = 'unchecked';
if (isset($_REQUEST['submit'])) {
if (isset($_POST['negrita'])){
echo "<p style='font-weight: bold'>" . $_POST['texto']. "</p>" ;
}
if (isset($_POST['cursiva'])){
echo "<p style='font-style: italic'>" . $_POST['texto']. "</p>" ;
}
if(isset($_POST['subrayado'])){
echo "<p style='text-decoration: underline'>" . $_POST['texto']. "</p>" ;
}
}
?>
<form action="ejercicio2_form.php" method="post">
<p>Introduce el texto a mostrar:
<input type="text" name="texto" value="<?php if (isset($_REQUEST["texto"])) echo $_POST['texto'];?>" size="20"> <br />
</p>
Estilo del texto:
<input type="checkbox" name="negrita" <?php if (isset($_POST['negrita']) && $_POST['negrita']=="negrita") echo "checked";?> value="negrita"> Negrita
<input type="checkbox" name="cursiva" <?php if (isset($_POST['cursiva']) && $_POST['cursiva']=="cursiva") echo "checked";?> value="cursiva"> Cursiva
<input type="checkbox" name="subrayado" <?php if (isset($_POST['subrayado']) && $_POST['subrayado']=="subrayado") echo "checked";?> value="subrayado"> Subrayado <br />
<input type="submit" name="submit" value="Aceptar">
</form>
</body>
如果在文本框中我写“你好!”然后单击所有 3 个复选框,我得到 3 个不同的“你好!”一个粗体另一个斜体,第三个下划线。我想要的是只得到一个“你好!”应用了所有三种文本样式。
【问题讨论】:
-
您应该在
isset($_Post['...'])语句中填充一个style变量并将其应用于echoed 段落。