[Funktion] Problem mit mysql_fetch_object

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Funktion] Problem mit mysql_fetch_object

    Hey,

    erstmal sorry, dass mein erstes Posting direkt schon ein "Hilferuf" ist.

    Ich hab ein Problem. Und zwar geht es um folgendes. Ich habe in einer My-SQL Datenbank Fußballspieler eingetragen. In der Tabelle, in der die Spieler eingetragen sind, befindet sich ein Feld mit dem Namen "pos" für die jeweilige Position. Sprich 1 für Torhüter, 2 für Abwehspieler, 3 für Mittelfeldspieler und 4 für Stürmer. Jetzt möchte ich bei der Abfrage, dass bei der Ansicht des Spielerkaders die jeweiligen Positionen als eine Art Kategorie angezeigt wird (siehe Screen).



    Wer ein bisschen Interesse am Fußball hat sieht, dass es sich hierbei um den Kader vom FC Arsenal handelt. Es funktioniert auch eigentlich einwandfrei, außer, dass ein Spieler in der Kategorie "Tor" fehlt. Und das wäre Manuel Almunia, obwohl dieser auch bei pos die 1 für Tor stehen hat. In der Abfrage, wird er auch ohne weiteres angezeigt.

    Ich muss dazu sagen, dass ich die Umsetzung für diese Darstellung im Internet gefunden habe. Das war ein eigentlich fertiges Script und ich habe es mir, bevor ich losgelegt habe angeschaut. Und auch da funktioniert es nicht. Der erste Datensatz wird immer missachtet und nicht ausgegeben. Das habe ich auch bei anderen Kader-Seiten von anderen Mannschaften. Jetzt ist es so, wenn ich in der Datenbank einen imaginären Spieler anlege mit der Positions-ID wird dieser Spieler zwar nicht angezeigt, aber der komplette Kader von Arsenal London wird angezeigt. Ich habe dieses Problem nur bei den Torhütern. Alle anderen Spieler werden richtig angezeigt.

    Hier mal der PHP-Code. Und bitte nicht auf Richtigkeit in Sachen Zeichensetzung achten. Ich hab das schnell mal "hingeschmiert" gestern. Der Feinschliff kommt dann auch erst, wenn das Script zu 100 % funktioniert.

    PHP-Code:
    <?php
    $strVar 
    "";
      echo 
    "<table width=\"100\%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
      
    $i=0;
      while(
    $row mysql_fetch_object($rs)) {

          
    // vergleichen des Spaltenwertes mit dem Wert der Variablen
        
    if ($strVar == "" || $strVar != $row->pos) {
            if(
    $row->pos 1) {echo"<tr><td colspan=\"7\" class=\"border_top\">&nbsp; </td></tr>";}    
        echo 
    "<tr><td class=\"table_header_01\" colspan=\"7\">";
        echo 
    positionen($row->pos);
        echo 
    "</td></tr>";
        echo 
    "<tr>";
        echo 
    "<td class=\"table_header_02\"><div align=\"center\">Nr</div></td>";
        echo 
    "<td class=\"table_header_02\">Name</td>";
        echo 
    "<td class=\"table_header_02\" colspan=\"2\">Nationali&auml;t</td>";
        echo 
    "<td class=\"table_header_02\">Geburtstag (Alter)</td>";
        echo 
    "<td class=\"table_header_02\">Gr&ouml;&szlig;e</td>";
        echo 
    "<td class=\"table_header_02\">Gewicht</td>";
        echo 
    "</tr>";

        
    // Variablen den Wert des Datenfeldes geben
        
    $strVar $row->pos;
        } 
    ?>
        <tr <?php if($i%2) {$bgc "tab_a";} else {$bgc "tab_b";} ?> class="<?php echo "$bgc"?>">
        <td height="25" class="border_left"><div style="font-weight:bold;" align="center"><?php echo $row->no?></div></td>
        <td><?php if($row->nickname NULL) {echo $row->nickname;} else {echo $row->vorname." ".$row->name;} ?></td>
        <td width="28"><div align="center">
        <img name="" src="/img/flags/<?php echo $row->nat1?>.png" width="17" height="17" />
        </div> <?php echo "</td><td>".$row->ioc."</td>
        <td>"
    ?><?php echo $row->geburtsdatum?><?php if($row->geburtsdatum NULL
        {echo 
    " (".$row->alter_jahre.")";} else { echo "";} ?></td>
        <td><?php if($row->grosse NULL) {echo $row->grosse." cm";} else {echo "";} echo "</td>
        <td class=\"border_right\">"
    ?><?php if($row->gewicht 0) {echo $row->gewicht." kg";} else {echo "";} ?>
    <?php $i
    ++; } 
    echo 
    "</table>"?>
    Zuletzt geändert von pälzer; 15.01.2008, 16:59.

  • #2
    bevor dir irgend jemand hilft, solltest du zuerst deinen code umbrechen. keiner scrollt gerne kilometerweit nach rechts, bevor er den antowrt-button findet.

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Sobald du deinen Code so umgebrochen hast, dass man nicht mehr horizontal scrollen muss (wie es ja auch in den Forums-Regeln steht, die du ja - wie alle andern auch - vor dem ersten Posting gelesen hast), werde ich mit auch den Code ansehen.
      Gruss
      H2O

      Kommentar


      • #4
        So jetzt ist der nervige Balken weg. Sorry wegen der Missachtung der Forenregeln. Ist normalweise überhaupt nicht meine Art.

        Kommentar

        Lädt...
        X