Avatar billede Mathiaskruse Juniormester
18. januar 2009 - 21:24 Der er 11 kommentarer og
1 løsning

PHP - Hjemmeside.

Hej alle. Jeg har en hjemmeside som er opsat i PHP.

Jeg har dog et stort problem, hjemmesiden er baseret på et spil, og jeg kan ikke få Ranking siden til at virke, får denne fejl:

Rankings


Warning: mssql_query() [function.mssql-query]: message: Invalid column name 'Reset'. (severity 16) in D:\Xampp\xampp\htdocs\rankcharacters.php on line 4

Warning: mssql_query() [function.mssql-query]: Query failed in D:\Xampp\xampp\htdocs\rankcharacters.php on line 4

Warning: mssql_num_rows(): supplied argument is not a valid MS SQL-result resource in D:\Xampp\xampp\htdocs\rankcharacters.php on line 32
#     Name     Resets



Her er filen som der bliver refereret til:

<?
include('config.php');
$query = "SELECT TOP 100 Name,Reset from Character order by Reset desc";
$result = mssql_query($query);
echo '<TABLE border=0 cellPadding=0 cellSpacing=0 >
                          <TBODY>
                          <TR>
                           
                       
    <TD align=left vAlign=top><A
                             
                             
  </TR>
                          <TR>
                            <TD align=left 
                            vAlign=top>
                              <TABLE border=0 cellPadding=10 cellSpacing=0
                           
                                <TBODY>
                                <TR>
                               
          <TD align=middle vAlign=center>
            <table height=30 cellspacing=0 cellpadding=0
                                width=150 border=0 >
              <tbody
              <tr>
          <td valign=top align=left width=0 height=0><span class="style50">#</td>
          <td valign=top align=left width=0><span class="style50">Name</td>
          <td valign=top align=center width=0><span class="style50">Resets</td>
</tr>';

for($i=0;$i < mssql_num_rows($result);++$i)
{
$row = mssql_fetch_row($result);
$rank = $i+1;

echo "<tr><td valign=top align=left><span class='style50'>$rank.</td>
<td valign=top align=left><span class='style50'>$row[0]</td>
<td valign=top align=center><span class='style50'>$row[1]</td>

</tr>";
}
 
         

?>
                  </tbody>
                </table>
               
                </TD>
        </TR></TBODY></TABLE></TD></TR>
                          <TR>
                           
                          </TD></TR></TBODY></TABLE>
Avatar billede Mathiaskruse Juniormester
18. januar 2009 - 21:28 #1
Linjer der bliver refereret til:

Linje 4 : $result = mssql_query($query);
Linje 32: for($i=0;$i < mssql_num_rows($result);++$i)
Avatar billede Dan Nim Seniormester
18. januar 2009 - 21:32 #2
Ehm, fejlen bliver udskrevet...

Warning: mssql_query() [function.mssql-query]: message: Invalid column name 'Reset'.

Feltet Reset findes ikke i tabellen Character

Mvh
Dan
Avatar billede Mathiaskruse Juniormester
18. januar 2009 - 21:36 #3
Hmm, er ikke sikker på om jeg forstår, men det tror jeg da. Jeg vil undersøge det. Tak, skulle lige fange den, hvis der er nogle der har forstand på MS SQL, så må i meget gerne sige til.
Avatar billede Dan Nim Seniormester
18. januar 2009 - 21:44 #4
hvad vil du vide?
Avatar billede Mathiaskruse Juniormester
18. januar 2009 - 21:48 #5
Nogle der kan fortælle mig hvordan jeg laver det her om:

http://mufurious.no-ip.info/ranking.php ...

Jeg vil gerne have at den først og fremmest sorterer folk efter Resets, men hvis ingen har Resets, så bare sorterer dem efter Levels..


Nogle der har nogle ideér... ? Tak.
Avatar billede Dan Nim Seniormester
18. januar 2009 - 21:53 #6
du kan sortere på flere felter ved at angive flere adskilt med komma:

SELECT TOP 100 Name,Reset from Character order by Reset desc, level
Avatar billede Mathiaskruse Juniormester
18. januar 2009 - 23:31 #7
Nice, tak dan. men, endnu et problem....


<?
include('config.php');
$query = "SELECT TOP 100 Name,Reset from Character order by Reset desc,cLevel desc";
$result = mssql_query($query);
echo '<TABLE border=0 cellPadding=0 cellSpacing=0 >
                          <TBODY>
                          <TR>
                           
                       
    <TD align=left vAlign=top><A
                             
                             
  </TR>
                          <TR>
                            <TD align=left 
                            vAlign=top>
                              <TABLE border=0 cellPadding=10 cellSpacing=0
                           
                                <TBODY>
                                <TR>
                               
          <TD align=middle vAlign=center>
            <table height=30 cellspacing=0 cellpadding=0
                                width=150 border=0 >
              <tbody
              <tr>
          <td valign=top align=left width=0 height=0><span class="style50">#</td>
          <td valign=top align=left width=0><span class="style50">Name</td>
          <td valign=top align=center width=0><span class="style50">Resets</td>
</tr>';

for($i=0;$i < mssql_num_rows($result);++$i)
{
$row = mssql_fetch_row($result);
$rank = $i+1;

echo "<tr><td valign=top align=left><span class='style50'>$rank.</td>
<td valign=top align=left><span class='style50'>$row[0]</td>
<td valign=top align=center><span class='style50'>$row[1]</td>

</tr>";
}
 
         

?>
                  </tbody>
                </table>
               
                </TD>
        </TR></TBODY></TABLE></TD></TR>
                          <TR>
                           
                          </TD></TR></TBODY></TABLE>


Hvordan tilføjer jeg mit nye row? Level Table.


Har fået den til at sortere efter level også : det er lækkert, tak dan :D
Avatar billede Mathiaskruse Juniormester
19. januar 2009 - 08:14 #8
Hvordan tilføjer jeg mit nye row? Level Table.
Avatar billede Dan Nim Seniormester
19. januar 2009 - 08:26 #9
Prøv flg.


<?
include('config.php');
$query = "SELECT TOP 100 Name,Reset,cLevel from Character order by Reset desc,cLevel desc";
$result = mssql_query($query);
echo '<TABLE border=0 cellPadding=0 cellSpacing=0 >
                          <TBODY>
                          <TR>
                           
                       
    <TD align=left vAlign=top><A
                             
                             
  </TR>
                          <TR>
                            <TD align=left 
                            vAlign=top>
                              <TABLE border=0 cellPadding=10 cellSpacing=0
                           
                                <TBODY>
                                <TR>
                               
          <TD align=middle vAlign=center>
            <table height=30 cellspacing=0 cellpadding=0
                                width=150 border=0 >
              <tbody
              <tr>
          <td valign=top align=left width=0 height=0><span class="style50">#</td>
          <td valign=top align=left width=0><span class="style50">Name</td>
          <td valign=top align=center width=0><span class="style50">Resets</td>
          <td valign=top align=center width=0><span class="style50">Level</td>
</tr>';

for($i=0;$i < mssql_num_rows($result);++$i)
{
$row = mssql_fetch_row($result);
$rank = $i+1;

echo "<tr><td valign=top align=left><span class='style50'>$rank.</td>
<td valign=top align=left><span class='style50'>$row[0]</td>
<td valign=top align=center><span class='style50'>$row[1]</td>
<td valign=top align=center><span class='style50'>$row[2]</td>
</tr>";
}
 
         

?>
                  </tbody>
                </table>
               
                </TD>
        </TR></TBODY></TABLE></TD></TR>
                          <TR>
                           
                          </TD></TR></TBODY></TABLE>

Når du tilføjer et felt mere i sql'en, udvider du blot dit $row array med en, så cLevel kommer på index 2.

Mvh
Dan
Avatar billede Mathiaskruse Juniormester
19. januar 2009 - 08:40 #10
Det tænkte jeg godt selv på :).


Men dog, da jeg så selv havde lavet min egen på den måde der, stod der level som overskrift, ja, tag selv et kig (http://mufurious.no-ip.info/ranking.php), men dog stadig ingen numre. ved Scriptet ikke hvor det skal hente tal fra?
Avatar billede Mathiaskruse Juniormester
19. januar 2009 - 08:42 #11
Haha ! :D Fandt min fejl, havde glemt at skrive "Reset,cLevel" i den $query string.


Tak dan.

SMid et svar :) så accepterer jeg.
Avatar billede Dan Nim Seniormester
19. januar 2009 - 09:21 #12
Oki :-)
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