Avatar billede crapmaster Nybegynder
26. januar 2005 - 07:23 Der er 5 kommentarer og
1 løsning

Hvad betyder denne fejl.

Hej alle!
Jeg har sådan en fodbold ting, alt virker som det skal på nær lige denne side. ( http://dvddatabasen.dk/fifa/index.php?opt=stats )
der kommer en masse fejl, men tingen virker på siden, og det er det jeg ikke kan forstå.
Her er koden til siden ( stats.php )

På linket kan man se alle de fejl koder den kommer med, de er oppe i toppen i det sorte
http://dvddatabasen.dk/fifa/index.php?opt=stats



KODEN:

<?php

/*
* CCleague Pro - Your League Online
* Copyright (C) 2004 Orlando L. Castillo
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or (at
* your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
*
*/

function Compare_stats($ar1, $ar2)
{
  if ($ar1['pts']<$ar2['pts'])
      return 1;
  else if ($ar1['pts']>$ar2['pts'])
      return -1;
  if ($ar1['lname']<$ar2['lname'])
      return 1;
  else if ($ar1['lname']>$ar2['lname'])
      return -1;
  if ($ar1['fname']>$ar2['fname'])
      return 1;
  else if ($ar1['fname']<$ar2['fname'])
      return -1;
  return 0;
}

function Compare_gstats($ar1, $ar2)
{
  if ($ar1['saves']<$ar2['saves'])
      return 1;
  else if ($ar1['saves']>$ar2['saves'])
      return -1;
  if ($ar1['shutouts']<$ar2['shutouts'])
      return 1;
  else if ($ar1['shutouts']>$ar2['shutouts'])
      return -1;
  if ($ar1['minutes']<$ar2['minutes'])
      return 1;
  else if ($ar1['minutes']>$ar2['minutes'])
      return -1;
  return 0;
}

function liststats($divid,$season) {

    global $_CONF,$_LANG;
    require("classes/Menu.php");

    $sql_seasons_statement = "SELECT * FROM ".$_CONF['tprefix']."seasons ORDER BY status DESC, name DESC";
    $result_seasons = mysql_query("$sql_seasons_statement");
    $total_seasons = mysql_numrows($result_seasons);
    $s = 0;
    $season_select = "
        <select name=\"season\">
    ";

    while($s < $total_seasons) {
        if(mysql_result($result_seasons,$s,"status") == 1) {
            $current_season = mysql_result($result_seasons,$s,"id");
        }

        $season_select .= "
            <option value=\"".mysql_result($result_seasons,$s,"id")."\">"
            .mysql_result($result_seasons,$s,"name").
            "</option>
        ";
        if(!$season) {
            if(mysql_result($result_seasons,$s,"status") == 1) {
                $open_season = mysql_result($result_seasons,$s,"id");
                $open_season_name = mysql_result($result_seasons,$s,"name");
                $season = $open_season;
            }
        } else {
            if(mysql_result($result_seasons,$s,"id") == $season) {
                $open_season = mysql_result($result_seasons,$s,"id");
                $open_season_name = mysql_result($result_seasons,$s,"name");
            }
        }
        $s++;
    }

    $season_select .= "
        </select>
    ";

    if(!$open_season_name) {
        $open_season_name = "On-Season";
    }
   
    $result_divisions = mysql_query("SELECT * FROM ".$_CONF['tprefix']."divisions WHERE disable != '0' ORDER BY list_order");
    $counter_divisions = 0;
    $total_rows_divisions = mysql_numrows($result_divisions);
    $divarray = Array();

    $myselect = "
        <center>
        <form method=\"post\" action=\"./\">
        <input type=\"hidden\" name=\"opt\" value=\"stats\">
        <select name=\"divid\">";

    while($counter_divisions < $total_rows_divisions) {
        $thisdiv = stripslashes(mysql_result($result_divisions,$counter_divisions,"name"));
        $thisdivid = mysql_result($result_divisions,$counter_divisions,"id");
        $divarray[$counter_divisions] = $thisdivid;
        $myselect .= "
            <option value=\"".$thisdivid."\">".$thisdiv."</option>";
        $counter_divisions++;
    }
   
    $myselect .= "
        </select>".$season_select."
        <input class=\"button\" type=\"submit\" name=\"Submit\" value=\"$_LANG[cc_view]\">
        </form></center>";

    if(!$divid) {
        $divid = $divarray[0];
    }
    $sql_div_name = "SELECT name FROM ".$_CONF['tprefix']."divisions WHERE id = '$divid'";
    $result_div_name = mysql_query("$sql_div_name");
    $total_div_name = mysql_numrows($result_div_name);
    if($total_div_name != 0) {
        $thisdiv = stripslashes(mysql_result($result_div_name,0,"name"));
    } else {
        $thisdiv = "";
    }

    $result_stats = mysql_query("SELECT * FROM ".$_CONF['tprefix']."player_stats WHERE div_id = '$divid' AND seasonid = '$open_season'");
    if(!$result_stats) { echo mysql_errno().": ".mysql_error()."<br>"; }
    $statcount = mysql_numrows($result_stats);
    $sc = 0;
    $p_array = Array();
    while($sc < $statcount) {
        $playerid = mysql_result($result_stats,$sc,"playerid");
        $p_array[$playerid][pid] = $playerid;

                $p_array[$playerid][goals] = $p_array[$playerid][goals] + mysql_result($result_stats,$sc,"goals");
                $p_array[$playerid][assists] = $p_array[$playerid][assists] + mysql_result($result_stats,$sc,"assists");
                $p_array[$playerid][saves] = $p_array[$playerid][saves] + mysql_result($result_stats,$sc,"saves");
                $p_array[$playerid][shutouts] = $p_array[$playerid][player_stats.shutouts] + mysql_result($result_stats,$sc,"shutouts");
                $p_array[$playerid][minutes] = $p_array[$playerid][minutes] + mysql_result($result_stats,$sc,"minutes");
                $p_array[$playerid][yellow] = $p_array[$playerid][yellow] + mysql_result($result_stats,$sc,"yellow");
                $p_array[$playerid][red] = $p_array[$playerid][red] + mysql_result($result_stats,$sc,"red");
                $p_array[$playerid][gp] = $p_array[$playerid][gp] + 1;
                $p_array[$playerid][pts] = ($p_array[$playerid][goals] * $_CONF['goal']) + ($p_array[$playerid][assists] * $_CONF['assist']);

        $result_player = mysql_query("SELECT * FROM ".$_CONF['tprefix']."players WHERE id = '$playerid'");
                $p_array[$playerid][fname] = mysql_result($result_player,0,"fname");
                $p_array[$playerid][lname] = mysql_result($result_player,0,"lname");
        $p_array[$playerid][position] = mysql_result($result_player,0,"position");
        $p_array[$playerid][number] = mysql_result($result_player,0,"number");
        $teaminfoid = mysql_result($result_player,0,"teamid");
                $p_array[$playerid][teamid] = $teaminfoid;
        $result_team = mysql_query("SELECT name FROM ".$_CONF['tprefix']."teams WHERE id = '$teaminfoid'");
                $p_array[$playerid][team] = mysql_result($result_team,0,"name");

        $sc++;
    }

        uasort($p_array, 'Compare_stats');

        $si = 0;
        while ((list ($key, $value) = each ($p_array)) && $si < "10") {

        if($_CONF['playerinfo'] == "1") {
            $playerinfo = "
            <a href=\"playerinfo.php?pid=".$value["pid"]."\"
            onClick=\"NewWindow(this.href,'name','400','450','yes');return false;\">
            <u>$value[fname] $value[lname]</u></a>";
        } else {
            $playerinfo = "
            $value[fname] $value[lname]";
        }

                $stats .= "
                <tr bgcolor=\"#ffffff\" align=\"center\">
                <td class=\"table_text\">$playerinfo</td>
                <td class=\"table_text\">".$value["position"]."</td>
                <td class=\"table_text\">".$value["number"]."</td>
        <td class=\"table_text\"><a href=\"index.php?opt=viewteam&id=".$value["teamid"]."&sid=$open_season\"> <u>".$value["team"]."</u></a></td>
                <td class=\"table_text\">".$value["goals"]."</td>
                <td class=\"table_text\">".$value["assists"]."</td>
                <td class=\"table_text\" bgcolor=\"#dfdfdf\">".$value["pts"]."</td>
                <td class=\"table_text\">".$value["gp"]."</td>
                <td class=\"table_text\">".$value["saves"]."</td>
                <td class=\"table_text\">".$value["shutouts"]."</td>
                <td class=\"table_text\">".$value["minutes"]."</td>
                <td class=\"table_text\">".$value["yellow"]."</td>
                <td class=\"table_text\">".$value["red"]."</td>
                </tr>";
                $si++;
        }
        if($si == 0) {
                $stats = "<tr><td class=\"body_text\" align=\"center\" colspan=\"13\"
                        bgcolor=\"#ffffff\">$_LANG[cc_nostats]</td></tr>";
        }

        uasort($p_array, 'Compare_gstats');

    $si = 0;
        while ((list ($key, $value) = each ($p_array)) && $si < "10") {

                if($value["position"] == "G") {
                    $gstats .= "
                    <tr bgcolor=\"#ffffff\" align=\"center\">
                    <td class=\"table_text\"><a href=\"playerinfo.php?pid=".$value["pid"]."\" onClick=\"NewWindow(this.href,'name','400','450','yes');return false;\"><u>"
                    .$value["fname"]." ".$value["lname"]."</u></a></td>
                    <td class=\"table_text\">".$value["number"]."</td>
            <td class=\"table_text\">
                       
                   
                    </td>
                    <td class=\"table_text\">".$value["saves"]."</td>
                    <td class=\"table_text\">".$value["shutouts"]."</td>
                    <td class=\"table_text\">".$value["gp"]."</td>
                    <td class=\"table_text\">".$value["minutes"]."</td>
                    <td class=\"table_text\">".$value["yellow"]."</td>
                    <td class=\"table_text\">".$value["red"]."</td>
                    </tr>";
                    $si++;
        }
        }
        if($si == 0) {
                $gstats = "<tr><td class=\"body_text\" align=\"center\" colspan=\"13\"
                        bgcolor=\"#ffffff\">$_LANG[cc_nostats]</td></tr>";
        }

    ob_start();
    include("html/menu_items.html");
    $menu = ob_get_contents();
    ob_end_clean();

    $item = new Menu();
    $item->CreateMain($menu, $type = "stats");
    $item->CreateAnn($menu);
    $menu = $item->get();

    ob_start();
    include("html/stats_body.html");
    $contents = ob_get_contents();
    ob_end_clean();

    return $contents;   
}
?>
Avatar billede coderdk Praktikant
26. januar 2005 - 08:04 #1
Hvis det virker, kunne du, alle de steder i linjerne 160-167 sætte et @ foran mysql_result - altså f.eks. i linje 160:

                $p_array[$playerid][fname] = @mysql_result($result_player,0,"fname");

Så viser den ikke fejlene...
Du kunne også i toppen af scriptet skrive:

error_reporting( E_ALL ^ E_NOTICE ^ E_WARNING );
Avatar billede crapmaster Nybegynder
26. januar 2005 - 13:02 #2
ok jeg takker mange gange, Det virker fint, Men kan du sige hvorfor den laver denne fejl ?

Og smid lige et svar så du kan få dine points
Avatar billede coderdk Praktikant
26. januar 2005 - 13:19 #3
Tjah, det ved jeg faktisk ikke, den siger at den ikke kan "spole tilbage" til resultat nummer 1 - Muligvis fordi den *er* på nummer 1 ;) Ved det ikke helt - Jeg ville fjerne alle de der mysql_result og hive dem ud før med en mysql_fetch_assoc eller lignende...
Avatar billede crapmaster Nybegynder
26. januar 2005 - 13:21 #4
ok Men hvordan gør jeg det ?.
Avatar billede coderdk Praktikant
26. januar 2005 - 13:23 #5
Well:

$sql = "SELECT felt FROM tabel WHERE id = 1";
$qh = mysql_query( $sql );
echo mysql_result( $qh, 0, 'felt' );

Svarer til:

$sql = "SELECT felt FROM tabel WHERE id = 1";
$qh = mysql_query( $sql );
$row = mysql_fetch_assoc( $qh );
echo $row['felt'];

;)
Avatar billede crapmaster Nybegynder
26. januar 2005 - 17:12 #6
Takker og //Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester