PHP:混色

时间:2015-05-11 13:33:06

标签: php

这将是一个非常愚蠢的问题,但我是编程新手,我无法弄明白。我想做的是在php中制作一个混色器。用户可以指定RGB值,然后应该出现颜色。

我有这个:

<html>

  <head>
    <title>
      RGB
    </title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>

  <body>
    <form method="get">
      <center>
        <h3>
          RGB
        </h3>
      </center>
      <br>
      <h5>
        Red
      </h5>

      <input type="range" name="red" min="0" max="255">
      <h5>
        Green
      </h5>

      <input type="range" name="green" min="0" max="255">
      <h5>
        Blue
      </h5>

      <input type="range" name="blue" min="0" max="255">
      <br>
      <input type="submit" value="submit">
      <br>
      <br>
      <?php $red=$ _GET[ "red"]; $green=$ _GET[ "blue"]; $blue=$ _GET[ "green"]; function rgb2hex($red,$blue,$green) { return '#' . sprintf( '%02x', $red) . sprintf( '%02x', $blue) . sprintf( '%02x', $green); } rgb2hex($red,$blue,$green); ?>
    </form>
  </body>

</html>

但我一直在获取有关未定义索引的信息,而且我不知道如何修复它。

2 个答案:

答案 0 :(得分:0)

首次运行此文件时,由于未提交表单,因此无法初始化$_GET['xxx']值。您可以检查表单是否像这样提交:

if (isset($_GET['myFormName'])){
    //your code here
}

您可以为表单设置名称并移动您的PHP代码而不使用此if内的函数。

答案 1 :(得分:0)

你得到了“Undefined Index ..”,因为在第一次打开页面时,$ red,$ blue和$ green没有设置,但即使这三个变量不存在也会执行php代码。

你必须将所有的PHP代码放入:

if(isset($_GET['submit_button_name']))
{
         //do your stuff here
}