设置值后,PHP变量似乎为null

时间:2013-10-15 00:12:06

标签: javascript jquery html css regex

在将空变量设置为值并将它们发布到页面上之后,这些PHP值将输出空数据。有谁知道为什么?

这是我的代码:

PHP:

<?php
$name = $_POST['query'];
$cap = null;
$ugly = "http://25.media.tumblr.com/tumblr_m3v5kj4ERf1qijcxeo1_500.gif";
$pretty = "http://upload.wikimedia.org/wikipedia/commons/e/e8/Bebe_Phoque_de_Weddell_Baby_Weddell_Seal.gif";
$hot = "http://hosting01.hotchyx.com/adult-image-hosting-42/466laugh.gif";
$weird = "http://d2tq98mqfjyz2l.cloudfront.net/image_cache/1308355337507544.gif"; 
$choice = null;
$little = null;
$adj1 = "walrus devouring";
$adj2 = "cat canoodling";
$adj3 = "voluptuous machine of ghettoness and stupidity";
$adjch = null;
$i = rand(1,4);
$w = rand(1,3);

if(w == 1)
{
    $adjch = $adj1;
}
elseif (w == 2)
{
    $adjch = $adj2;
}
elseif (w == 3)
{
    $adjch = $adj3;
}

if(i == 1)
{
    $choice = $ugly;
    $little = "You should probably see a doctor.";
    $cap = "$name, You're uglier than all of One Direction * 2 + 100. That's pretty bad.";

}
elseif (i == 2)
{
    $choice = $weird;
    $cap = "$name, you're weird.";
    $little = "I wish I didn't know you and you didn't exist you creepy, $adjch diddly do gooder.";
}
elseif (i == 3)
{
    $choice = $pretty;
    $cap = "$name, you're the prettiest $adjch person on earth.";
    $little = "ilu so much";
}
else if(i == 4)
{
    $choice = $hot;
    $cap = "$name, help the homeless. Take me home with you.";
    $little = "You're hot. Really hot.";
}

?>

HTML:

<html>
<link href="css/bootstrap.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container-fluid">
          <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <div class="nav-collapse collapse">
            <ul class="nav">
              <li class="active"><a href="index.html">Home</a></li>
              <li><a href="blog.html">Blog</a></li>
              <li><a href="about.html">About</a></li>
            </ul>
          </div><!--/.nav-collapse -->
        </div>
      </div>
    </div>

<div class='push'></div>
<p><img src="<?php echo $choice;?>"</p>
<h2 align='center'><strong><?php echo $cap;?></strong></h2>
<p><?php echo $little;?></p>
<p><a href="index.html" class='btn'><i class="icon-search"></i> Go back </a></p>

</body>
<div class='footerpush'></div>
<hr>
<div align='center'>
<a href='about.html'>about</a>
|
<a href='blog.html'>blog</a>
|
<a href='twitter.com'>twitter</a>
|
<a href='notice.html'>our policy</a>
</div>
<p>&copy bleh blah</p>

</html>

谢谢大家(P.S,我是一个PHP noob很抱歉)

2 个答案:

答案 0 :(得分:2)

用以下内容更改所有IF:

if ($w == ...)if ($i==...)当然还有如何使用switch statement

答案 1 :(得分:2)

if(w == 1)if(i == 1)?什么是w?什么是i?您只声明了$w$i

您知道可以通过使用数组来简化此代码。

<?php

    $name = $_POST['query'];

    $adjs = array(
        1 => "walrus devouring",
        2 => "cat canoodling",
        3 => "voluptuous machine of ghettoness and stupidity"
    );

    $adjch = $adjs[rand(1, 3)];

    $choices = array(
        1 => "http://25.media.tumblr.com/tumblr_m3v5kj4ERf1qijcxeo1_500.gif",
        2 => "http://d2tq98mqfjyz2l.cloudfront.net/image_cache/1308355337507544.gif",
        3 => "http://upload.wikimedia.org/wikipedia/commons/e/e8/Bebe_Phoque_de_Weddell_Baby_Weddell_Seal.gif",
        4 => "http://hosting01.hotchyx.com/adult-image-hosting-42/466laugh.gif"
    );

    $littles = array(
        1 => "You should probably see a doctor.",
        2 => "I wish I didn't know you and you didn't exist you creepy, $adjch diddly do gooder.",
        3 => "http://upload.wikimedia.org/wikipedia/commons/e/e8/Bebe_Phoque_de_Weddell_Baby_Weddell_Seal.gif",
        4 => "You're hot. Really hot."
    );

    $caps = array(
        1 => "$name, You're uglier than all of One Direction * 2 + 100. That's pretty bad.",
        2 => "$name, you're weird.",
        3 => "ilu so much",
        4 => "$name, help the homeless. Take me home with you."
    );

    $i = rand(1, 4);

    $choice = $choices[$i];
    $cap    = $caps[$i];
    $little = $littles[$i];

?>