在提交表单后添加要链接的类

时间:2013-09-03 02:10:25

标签: php sql forms

我试图在提交表单后添加一个类,具体取决于用户选择的选项。

<form enctype="multipart/form-data" action="upload.php" method="POST">
    title:<br /> 
    <input type="text" name="title" value="" /> <br />
    description:<br /> 
    <input type="text" name="description" value="" /> <br />
    Categories:<br /> 
    <input type="checkbox" name="categories[]" value="1">Landscpae<br />
    <input type="checkbox" name="categories[]" value="2">Portrait<br />
    <input type="checkbox" name="categories[]" value="3">Monochrome<br />
    Please choose an image: <input name="uploaded" type="file" /><br />
    <input type="submit" value="Upload" />
</form> 


<li class='INSERT OPTION HERE'> test </li>

使用选项选择多个类,因此在每个类之后添加一个空格。 在我的数据库中,Value =“1”“2”“3”==选项名称

如果需要更多信息,请告诉我

2 个答案:

答案 0 :(得分:0)

您希望确保提交表单,如果是,则回显一个类,并创建一个switch语句,该语句将根据所选内容更改类。

<li 
<?php 
if(isset($_POST['categories']))  {
echo 'class="';
switch($_POST['categories']) {
case 1;
echo 'class1';
break;
case 2;
echo 'class2';
break;
case 3;
echo 'class3';
break;
echo '"';
}
}
?> 
> test </li>

答案 1 :(得分:0)

这些方面的某些内容可能有效:

$valid = array(1,2,3);#valid items
if(isset($_POST['categories']) && is_array($_POST['categories'])){
    $post = array_unique($_POST['categories']);#you might not need this, but this removes duplicate values
    foreach($post as $key => $value){
        if(in_array($value, $valid)){
            $class = true;
        }else{
            unset($post[$key]);#remove bad values, also this may not be necessary but removes unwanted items.
        }
    }
    if(isset($class)){
        $class = 'class="class' . implode(' class', $post) . '"';
    }
}#else needed for non array categories?

<li <?php if(isset($class)){ echo $class;} ?> > test</li>

DEMO