帮助php空白页?

1 php

我经营一个梦幻篮球联赛.我的php网站/ sql数据库旨在让运行团队的人通过网站完成所有事情 - 他们可以放弃玩家,玩家自动进入FA池等.

直到大约一周前,一切都运作良好.现在任何时候团队去签署一个玩家,点击"签名"后,他们会得到一个空白的PHP页面.我不知道为什么 - 我没有对任何文件进行调整.它刚刚开始发生.下面是空白PHP页面的代码 - 有人可以帮忙吗?

<?php

$username = "me";
$password = "mypassword";
$database = "mydatabase";

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");

$Team_Offering = $_POST['Team_Name'];
$Fields_Counter = $_POST['counterfields'];
$Roster_Slots = $_POST['rosterslots'];
$Healthy_Roster_Slots = $_POST['healthyrosterslots'];
$Type_Of_Action = $_POST['Action'];

$queryt="SELECT * FROM nuke_ibl_team_info WHERE team_name = '$Team_Offering' ";
$resultt=mysql_query($queryt);

$teamid=mysql_result($resultt,0,"teamid");

$Timestamp = intval(time());


// ADD TEAM TOTAL SALARY FOR THIS YEAR

$querysalary="SELECT * FROM nuke_iblplyr WHERE teamname = '$Team_Offering' AND retired = 0 ";
$results=mysql_query($querysalary);
$num=mysql_numrows($results);
$z=0;

while($z < $num)
    {
        $cy=mysql_result($results,$z,"cy");
        $cyy = "cy$cy";
        $cy2=mysql_result($results,$z,"$cyy");
        $TotalSalary = $TotalSalary + $cy2;
        $z++;
    }

//ENT TEAM TOTAL SALARY FOR THIS YEAR

$k=0;
$Salary=0;

while ($k < $Fields_Counter)
{
$Type=$_POST['type'.$k];
$Salary=$_POST['cy'.$k];
$Index=$_POST['index'.$k];
$Check=$_POST['check'.$k];
$queryn="SELECT * FROM nuke_iblplyr WHERE pid = '$Index' ";
$resultn=mysql_query($queryn);
$playername=mysql_result($resultn,0,"name");
$players_team=mysql_result($resultn,0,"tid");

if ($Check == "on")
  {
  if ($Type_Of_Action == "drop")
    {
      if ($Roster_Slots < 4 and $TotalSalary > 7000)
        {

          echo "You have 12 players and are over $70 mill hard cap.  Therefore you can't drop a player! <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.";

        }else{

          $queryi = "UPDATE nuke_iblplyr SET `ordinal` = '1000', `droptime` = '$Timestamp' WHERE `pid` = '$Index' LIMIT 1;";
          $resulti=mysql_query($queryi);

          $topicid=32;
          $storytitle=$Team_Offering." make waiver cuts";
          $hometext="The ".$Team_Offering." cut ".$playername." to waivers.";

          // ==== PUT ANNOUNCEMENT INTO DATABASE ON NEWS PAGE 
          $timestamp=date('Y-m-d H:i:s',time());

          $querycat="SELECT * FROM nuke_stories_cat WHERE title = 'Waiver Pool Moves'";
          $resultcat=mysql_query($querycat);
          $WPMoves=mysql_result($resultcat,0,"counter");
          $catid=mysql_result($resultcat,0,"catid");

          $WPMoves=$WPMoves+1;

          $querycat2="UPDATE nuke_stories_cat SET counter = $WPMoves WHERE title = 'Waiver Pool Moves'";
          $resultcat2=mysql_query($querycat2);

          $querystor="INSERT INTO nuke_stories (catid,aid,title,time,hometext,topic,informant,counter,alanguage) VALUES ('$catid','Associated Press','$storytitle','$timestamp','$hometext','$topicid','Associated Press','0','english')";
          $resultstor=mysql_query($querystor); 
          echo "<html><head><title>Waiver Processing</title>
            </head>
            <body>
            Your waiver moves should now be processed.  <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.
            </body></html>";
        }

    } else {
      if ($players_team == $teamid)
        {
          $queryi = "UPDATE nuke_iblplyr SET `ordinal` = '800', `teamname` = '$Team_Offering', `tid` = '$teamid' WHERE `pid` = '$Index' LIMIT 1;";
          $resulti=mysql_query($queryi);
          $Roster_Slots++;

          $topicid=33;
          $storytitle=$Team_Offering." make waiver additions";
          $hometext="The ".$Team_Offering." sign ".$playername." from waivers.";

          // ==== PUT ANNOUNCEMENT INTO DATABASE ON NEWS PAGE 

          $timestamp=date('Y-m-d H:i:s',time());

          $querycat="SELECT * FROM nuke_stories_cat WHERE title = 'Waiver Pool Moves'";
          $resultcat=mysql_query($querycat);
          $WPMoves=mysql_result($resultcat,0,"counter");
          $catid=mysql_result($resultcat,0,"catid");

          $WPMoves=$WPMoves+1;

          $querycat2="UPDATE nuke_stories_cat SET counter = $WPMoves WHERE title = 'Waiver Pool Moves'";
          $resultcat2=mysql_query($querycat2);

          $querystor="INSERT INTO nuke_stories (catid,aid,title,time,hometext,topic,informant,counter,alanguage) VALUES ('$catid','Associated Press','$storytitle','$timestamp','$hometext','$topicid','Associated Press','0','english')";
          $resultstor=mysql_query($querystor); 
          echo "<html><head><title>Waiver Processing</title>
            </head>
            <body>
            Your waiver moves should now be processed.  <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.
            </body></html>";

        } else {

          if ($Healthy_Roster_Slots < 4 and $TotalSalary + $Salary > 7000)
          {

              echo "You have 12 or more healthy players and this signing will put you over $70.  Therefore you can not make this signing. <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.";

          } elseif ($Healthy_Roster_Slots > 3 and $TotalSalary + $Salary > 7000 and $Salary > 103) {

              echo "You are over the hard cap and therefore can only sign players who are making veteran minimum contract! <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.";

          } elseif ($Healthy_Roster_Slots < 1) {
              echo "You have full roster of 15 players.  You can't sign another player at this time! <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.";

          } else {

              $queryi = "UPDATE nuke_iblplyr SET `ordinal` = '800', `bird` = '0', `cy` = '1', `cy1` = '$Salary', `teamname` = '$Team_Offering', `tid` = '$teamid' WHERE `pid` = '$Index' LIMIT 1;";
              $resulti=mysql_query($queryi);
              $Roster_Slots++;

              $topicid=33;
              $storytitle=$Team_Offering." make waiver additions";
              $hometext="The ".$Team_Offering." sign ".$playername." from waivers.";

              // ==== PUT ANNOUNCEMENT INTO DATABASE ON NEWS PAGE 

              $timestamp=date('Y-m-d H:i:s',time());

              $querycat="SELECT * FROM nuke_stories_cat WHERE title = 'Waiver Pool Moves'";
              $resultcat=mysql_query($querycat);
              $WPMoves=mysql_result($resultcat,0,"counter");
              $catid=mysql_result($resultcat,0,"catid");

              $WPMoves=$WPMoves+1;

              $querycat2="UPDATE nuke_stories_cat SET counter = $WPMoves WHERE title = 'Waiver Pool Moves'";
              $resultcat2=mysql_query($querycat2);

              $querystor="INSERT INTO nuke_stories (catid,aid,title,time,hometext,topic,informant,counter,alanguage) VALUES ('$catid','Associated Press','$storytitle','$timestamp','$hometext','$topicid','Associated Press','0','english')";
              $resultstor=mysql_query($querystor); 
              echo "<html><head><title>Waiver Processing</title>
                </head>
                <body>
                Your waiver moves should now be processed.  <br>You will be automatically redirected to <a href=\"http://www.chibul.com/iblv2\">the main IBL page</a> in a moment.  If you are not redirected, click the link.
                </body></html>";

            }
        }
    }
  }
$k++;
}

?>
Run Code Online (Sandbox Code Playgroud)

Dar*_*ein 10

在打开的PHP标记之后放下以下内容:

error_reporting(E_ALL);
ini_set('display_errors', 'On');
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,可能存在解析错误,然后您需要检查错误日志.

您还需要转义您在查询中添加的值.这可能导致MySQL查询失败.如果有人放入"$ _POST ['Team_Name'],您的第一个查询可能会失败.

另一个最终可能的问题:你确定它仍然可以连接到MySQL吗?

找到问题的一个选项是注释掉大部分代码,然后逐段取消注释.

编辑:所以你的第一个问题就是这mysql_connect条线.它需要更改为,注意引号:mysql_connect('localhost',$username,$password);此外,变量$result$queryt拼写错误在这一行并用于正确的拼写:$resultt=mysql_query($queryt);我没有检查其余的,但可能会有其他错误导致你的脚本中断.某些错误列表很重要,但不会破坏您的脚本.

转义:请查看以下页面:http://php.net/manual/en/function.mysql-escape-string.php这基本上可以防止人们删除整个数据库.

检查此页面上的示例代码,了解如何连接到MySQL并检查您是否已连接.

另一个建议:您确定没有任何查询失败吗?您可能希望在继续之前检查查询的结果是否为false,例如:

if ($resultcat2 === false) {
    trigger_error('query failed ' . $sql, E_USER_ERROR);
    echo 'Sorry, there was a problem processing your request. Please try again later.';
    exit;
}
Run Code Online (Sandbox Code Playgroud)