Как отформатировать текст в php, когда у нас есть 2 или более вариантов - PullRequest
5 голосов
/ 25 сентября 2011

Я пытаюсь сделать простой скрипт, который позволяет форматировать текст и отправлять его.

Вот форма:

<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>";
}

?>

Мне удалось Спасибо за ответы! секрет был в пусто ($ 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'];
}
?>

Ответы [ 3 ]

1 голос
/ 25 сентября 2011

Радиокнопки должны иметь одинаковое имя, в противном случае используйте флажок, а также лучше использовать не числовые имена для полей формы

<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>";
}

?>
1 голос
/ 25 сентября 2011

Я думаю, что это лучший способ сделать это - какой-нибудь инструмент XML / DOM

Но вы можете использовать этот код:

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

Кроме того, вы должны знать, что <font> устарела.

0 голосов
/ 25 сентября 2011

Вот решение :):

    <?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'];
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...