body标签中的PHP代码

时间:2014-11-18 03:11:27

标签: php html css

我尝试在body标签中放置一些php,根据从第一页传递的值来更改页面的背景颜色,但它不起作用。

我可以这样做吗? (在body标签内添加php代码)

如果没有,根据第一页传递的值更改页面背景颜色的最简单方法是什么

<html>
<head>
    <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
    <meta charset=utf-8>
<title></title>
</head>
    <body <?php
    $teamvar = $_POST['team_id'];
    if($teamvar == 1){
        $teamvar = "Celtics";
        echo "style='background-color: green;'>"
    } else {
        echo "style='background-color: yellow;'>"; }
            ?> 
        <div id=content> 
        <p>
        Test
        </p>
        </div>

    </body>
</html>

6 个答案:

答案 0 :(得分:2)

你错过了;

末尾的分号echo "style='background-color: green;'>"

将其更改为:

echo "style='background-color: green;'>";

它会起作用。

您还应该为<div id=content>

添加引号
<div id="content">

这是一种很好的形式。

答案 1 :(得分:1)

这段代码看起来应该对我有用。你确定你发布了正确的价值吗?尝试打印页面上的已发布值以查看。或者只是var_dump($_POST);

然而,因为它是你的代码不是很可读。最好不要混合使用HTML和逻辑。我会做这样的事情:

<?php
    $teamid = $_POST["team_id"];
    if ($teamid == "1"){
        $color = "green";
    } else {
        $color = "yellow";
    }
?>
...
<body style="background-color: <?= $color %>;">

答案 2 :(得分:1)

尝试以下代码

<html>

<head>
    <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
    <meta charset=utf-8>
<title></title>
</head>

<?php
  $body_style = "";
  $teamvar = $_POST['team_id'];
  if($teamvar == 1){
      $teamvar = "Celtics";
      $body_style ="style='background-color: green;'>";
  } else {
      $body_style = "style='background-color: yellow;'>"; 
  }       
 ?>
    <body <?php echo $body_style; ?> >

        <div id="content"> 
        <p>
        Test
        </p>
        </div>

    </body>
</html>

答案 3 :(得分:1)

您的代码不是错误,但您可以更好地使用它,例如。

<html>
<head>     
    <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
    <meta charset=utf-8>     
    <title></title>   
</head>   

<?php
if (isset($_POST['team_id']) {
    if($_POST['team_id'] == 1)
        $variable = "style='background-color: green;'>";
    else
        $variable = "style='background-color: yellow;'>";
} else 
    $variable = "style='background-color: yellow;'>";
?>     
    <body <?php echo $variable;?>> 
        <div id=content> 
            <p>
                Test
            </p>
        </div>
    </body>
</html>

正如您所看到的,此代码比您的代码更美观。

答案 4 :(得分:0)

这是你工作的代码

 <html>
<head>
    <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
    <meta charset=utf-8>
<title></title>
</head>
    <body <?php

    $teamvar = $_POST['team_id'];
    if($teamvar == 1){{
        $teamvar = "Celtics";
        echo "style='background-color: green;'>";
    } else {
        echo "style='background-color: yellow;'>"; }
            ?> 
        <div id=content>
        <p>
        Test
        </p>
        </div>

    </body>
</html>

你可以测试它:)

答案 5 :(得分:-1)

你的代码看起来很糟糕!但这应该有效:

(顺便说一句:你忘记了代码中的;

<html>
    <head>
        <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
        <meta charset="utf-8">
        <title>Test</title>
    </head>

    <?php

        //Test
        $_POST['team_id'] = 1;
        $teamvar = $_POST['team_id'];

        if($teamvar == 1) {
            $teamvar = "Celtics";
            echo "<body style='background-color: green;'>";
        } else {
            echo "<body style='background-color: yellow;'>";
        }

    ?> 

        <div id="content"> 
            <p>Test</p>
        </div>

    </body>
</html>

另外,我建议你打开错误报告:

<?php
    error_reporting(E_ALL);
    ini_set("display_errors", 1);
?>