Array Search

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

  • Array Search

    Hi,

    ich habe ein etwas kompliziertes Problem, mal schauen ob ich es
    beschreiben kann und ob jemand einen Tip hat.

    Ich habe Spielpläne in einer DB. Diese möchte ich auslesen, für jeden
    Spieltag jeweils eine Tabelle und dort rein ein Link auf den man klicken
    kann, um Ergebnisse einzutragen und einen 2. link um jeweils einen
    Spielbericht zu schreiben. (Den eigenen Verein)

    Soweit kein Problem, aber dachte mir nun das ganze etwas elleganter zu
    gestalten.

    Wenn ich also mit while aus der DB auslese, speicher ich diese Werte in ein
    mehrdimensionales, assoziatives Array.

    Danach durchlaufe ich das Array mit Foreach und baue mir die Tabellen
    zusammen. Dies wird dann erneut in einem Array gespeichert und erst
    wenn alle diese Werte drinn sind am Ende mit Foreach die Tabellen
    ausgegeben. Der Grund warum ich es erneut in ein Array speicher liegt
    daran, das ich einen wechselnden Link habe. Bedeutet, wenn ein Ergebnis
    bereits eingetragen ist, erscheint der Link "Ergebnisse ändern"
    ansonsten "Ergebnis eintragen". Bevor ich es in einem erneuten Array
    abgespeichert hatte, gab es das Problem das der Link auf "Ergebnis
    eintragen" blieb, wenn das Erste Ergebnis eines Spieltages leer war,
    unabhängig ob die Ergebnisse des restlichen Spieltages vorhanden waren.


    Das funzt nun also auch. Nun zu meinem Problem. Der Spielbericht soll
    natürlich nur für das Spiel vom eigenen Verein geschrieben werden. Jedes

    Spiel hat ja eine SpielID.

    Ich habe ja bereits bei der DB Anfrage alles in einem Array gespeichert.
    Nun dachte ich mir das ich erstmal in der DB anfrage nach der
    MannschaftsID. Es gibt in meinem Fall 3 Mannschaften im Verein. Ich
    speicher diese 3 IDs in ein Array. So hier mal der Code:


    PHP-Code:
    $Matchdata hat alle Daten für alle Spieltage gespeichertdiese kommen 
    aus DB 
    foreach ($Matchdata as $MatchdataValue)

    {
      foreach (
    $ClubTeams as $ClubTeamID)

      {
        
        if (
    $ClubTeamID['TeamID'] == $MatchdataValue['HomeTeamID'] || 

       
    $ClubTeamID['TeamID'] == $MatchdataValue['GuestTeamID'])
        {
           
    $arrID $MatchdataValue['FixtureID']; //ID des Spiels von meinem 
    Verein
        
    }
       }
            
                
      
    $arraykeyarray_search($arrID,$Matchdata);  // Search the array to find 
    the key where the Information are stored for the Club Team 
    Ok, ich möchte also während ich das Array mit den DB Daten durchlaufe
    und die Tabellen baue, dieses gleichzeitig überprüfen, um zu sehen in
    welcher Array ID mein Club gespeichert ist. Dann möchte ich diese ID in
    den Link Spielbericht einbauen. Wenn ich dann auf die nächste Seite
    komme lese ich in den Bericht automatisch die gespeicherten Daten aus
    dem Array ein. wenn also die Daten in 2 gespeichert sind, müsste es ja so
    gehen
    PHP-Code:
    echo $Matchdata[2]['TeamName'
    Problem ist das echo $arraykey; nichts ausgibt. Wo liegt hier mein
    Denkfehler? Ich hoffe ich habe es vernünftig erklärt. Ist etwas kompliziert.


    Vielen Dank im voraus für jeden Tip.

    Gruß Luka
    Zuletzt geändert von Luka; 31.08.2007, 17:37.

  • #2
    Ok, ich versuche verzweifelt das Array mit array_search zu durchsuchen,
    bekomme aber entweder nichts angezeigt oder wenn ich den Namen direkt
    angeben eine Fehlermeldung.

    PHP-Code:
    $arraykeyarray_search("101",$Matchdata['FixtureID']); 
    Die Fehlermeldung lautet:

    Warning: array_search() [function.array-search]: Wrong datatype for second argument in C:\Programme\Apache ...

    $Matchdata ist aber ein Array und zwar ein mehrdimensionales, assoziatives Array.

    Wenn ich nur das angeben:

    PHP-Code:
    $arraykeyarray_search("101",$Matchdata); 
    Kommt nichts zurück. Was bedeutet die Fehlermeldung und kann ich array_search verwenden für ein ass., mehrdim. Array??
    Zuletzt geändert von Luka; 31.08.2007, 17:35.

    Kommentar


    • #3
      Vielleicht brichste mal den Code um dann liest irgendjemand den Kram auch mal.
      Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.

      Kommentar


      • #4
        Hi,

        habe ich nicht gesehen, da ich einen Wide Screen habe. Sorry. Vielleicht jetzt?

        Kommentar

        Lädt...
        X