【问题标题】:How to format text in php when we have 2 or more options当我们有 2 个或更多选项时如何在 php 中格式化文本
【发布时间】:2011-11-24 10:52:18
【问题描述】:

我正在尝试制作一个允许格式化文本并提交的简单脚本。

这是表格:

<html>
<head>
<title>
</title>
</head>
<body>
<form method="post" action="step2.php">
<input type="text" name="text"  /><br>
Red<input type="radio" name="Red" /> <br>
15px<input type="radio" name="15" /> <br>
<input type="submit" name="submit"/>
</form>
</body>
</html>
在此阶段的Step2.php中,我在选择2个选项时,我会显示结果。 我试图在仅选择“红色”、仅选择“15px”、同时选择两者以及未选择任何内容时显示结果。 这是我目前的脚本:
<?php
if (isset($_POST['Red']) && isset($_POST['15']) ) {
echo "<font size='15px' color=red>";
echo $_POST['text'];
echo "</font>";
}

?>

我成功了 感谢您的回答! 秘密在 empty($varname) 中,这是代码

<?php
if (isset($_POST['Red']) && isset($_POST['15']) ) {
echo "<font size='15px' color=red>";
echo $_POST['text'];
echo "</font>";
}

if (empty($_POST['Red']) && isset($_POST['15']) ) {
echo "<font size='15px'>";
echo $_POST['text'];
echo "</font>";
}

if (isset($_POST['Red']) && empty($_POST['15']) ) {
echo "<font color=red>";
echo $_POST['text'];
echo "</font>";
}

if (empty($_POST['Red']) && empty($_POST['15']) ) {
echo $_POST['text'];
}
?>

【问题讨论】:

  • 为什么要使用&lt;font&gt; 标签?为什么不用 CSS?

标签: php forms text formatting options


【解决方案1】:

我认为更好的方法是使用一些 XML/DOM 工具

但是你可以使用这个代码:

$attrs='';
if(isset($_POST['Red']))
    $attrs.='color=red';
if(isset($_POST['15']))
    $attrs.='size="15px";

此外,您应该知道&lt;font&gt; 现在已被弃用。

【讨论】:

    【解决方案2】:

    单选按钮应该具有相同的名称,否则使用复选框,并且最好不要为表单字段使用数字名称

    <html>
    <head>
    <title>
    </title>
    </head>
    <body>
    <form method="post" action="step2.php">
    <input type="text" name="text"  /><br>
    Red<input type="checkbox" name="Red" value="Red" /> <br>
    15px<input type="checkbox" name="px15" value="15" /> <br>
    <input type="submit" name="submit"/>
    </form>
    </body>
    </html>
    

    step2.php

    <?php
    if (isset($_POST['Red']) && isset($_POST['px15']) ) {
    echo "<font size='15px' color=red>";
    echo $_POST['text'];
    echo "</font>";
    }
    
    ?>
    

    【讨论】:

      【解决方案3】:

      这是一个解决方案:):

          <?php
      if (isset($_POST['Red']) && isset($_POST['15']) ) {
      echo "<font size='15px' color=red>";
      echo $_POST['text'];
      echo "</font>";
      }
      
      if (empty($_POST['Red']) && isset($_POST['15']) ) {
      echo "<font size='15px'>";
      echo $_POST['text'];
      echo "</font>";
      }
      
      if (isset($_POST['Red']) && empty($_POST['15']) ) {
      echo "<font color=red>";
      echo $_POST['text'];
      echo "</font>";
      }
      
      if (empty($_POST['Red']) && empty($_POST['15']) ) {
      echo $_POST['text'];
      }
      ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-09-23
        • 1970-01-01
        • 1970-01-01
        • 2018-04-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-17
        相关资源
        最近更新 更多