neues abfrage problem

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

  • neues abfrage problem

    hallo,
    ich durchsuche innerhalb meiner for-schleife das db-array nach dem inhalt $where.
    der zeiger meiner abfrage steht aber wohl auf der where, so werden mir die falschen daten angezeitg.

    11.05.2004.30 ID :
    11.05.2004.30 DDDDATEN :
    16.05.2004.30 WHERE :

    12.05.2004 ID :
    12.05.2004 DDDDATEN :
    11.05.2004.30 WHERE :

    also wird nach dem 11.05.2004.30 gesucht werden mit die daten des 12.05.2004.30 angezeigt, weil der zeiger der where sich hier die daten holt und nicht im ergebnis.

    sorry ich weiß das ich das nicht gut beschreiben kann :-(

    hier noch mein code:
    PHP-Code:
              $my 0;
              
    $result mysql("db100588358""SELECT id, daten FROM KALENDER_DATEN");
              
    //MYSQL_ASSOC erstellt assoziatives Array, spalte direkt ansprechbar
              
    while($mydaten mysql_fetch_array($resultMYSQL_ASSOC))  {
              
    $meinarray[$my] = $mydaten["id"];
              
    $meinarray2[$my] = $mydaten["daten"];
              
    $my++;
              }
    //end while

               
    for($l=0$l<7;$l++){
                          if(
    $x == $kkkk) {
                          
    $caltime "30";
                          
    $where =($wochentag[$l].".".$caltime);
                          echo 
    $meinarray[$l]."ID :<br>".$meinarray2[$l]."DATEN :<br>";
                          echo 
    $where."WHERE :<hr><br>";
                   if (
    in_array("$where"$meinarray)) {
                   echo 
    "<td bgcolor=\"#FFFFFF\">
    <a href=\"javascript:open_nachricht(
    $j,".$termin.")\" class=\"anzeige\">";
                   echo 
    "<a href=\".$termin\">".$meinarray2[$l]."+".$meinarray[$l];
                   echo 
    "</a></td>";
                   }else{
                   echo 
    "<td bgcolor=\"#CCCCFF\">&nbsp;</td>";
                   }
                   if(
    $wochentag[$l]==6) echo "</tr><tr><td>&nbsp;</td>";
                            } 
    //end if
               
    }//end for 
    es wäre toll wenn hier jemand eine lösung hätte, bin nämlich schon am verzweifeln.
    danke
    EDIT:
    TobiaZ: mal umgebrochen
    Zuletzt geändert von TobiaZ; 16.05.2004, 21:25.

  • #2
    versteh ich leider nicht.

    Kommentar


    • #3
      mein problem ist das ich falsche daten bekomme.
      be if(in_array) schaue ich nach ob meine where 11.05.2004.30 im array vorhanden ist.

      diese gibe es als "id" in der datenbank, also auch in meinem array. 01.01.2004.30

      zu diese id im array gibt es auch daten die sich ebenfalls in meinem array befinden.

      er zeigt mir aber nicht die daten welche der id zugeordnet sind.


      danke
      http://www.fussballkinder.de/planer/...y=2004&kkkk=20

      Kommentar


      • #4
        dann poste doch mal bitte den inhalt des arrays (falls es da viel gibt, bitte nur nen auszug)

        PS: Ist dein Schreibstil aufgrund deiner Nationalität (oder ähnlich) etwas schlechter.

        Kommentar


        • #5
          oder ähnliches :-).

          hier poste ich dir den inhalt. hoffe ich habe verstanden was du meinst:
          15.05.2004.30ID :
          15.05.2004.30DDDATEN :
          10.05.2004.30WHERE :

          12.05.2004ID :
          12.05.2004DDDDATEN :
          11.05.2004.30WHERE :

          13.05.2004.60ID :
          13.05.2004.60DDDDATEN :
          12.05.2004.30WHERE :

          10.05.2004.60ID :
          10.05.2004.60DDDDATEN :
          13.05.2004.30WHERE :

          10.05.2004.240ID :
          10.05.2004.240DDDDATEN :
          14.05.2004.30WHERE :

          01.01.2004.30ID :
          01.01.2004.30DDDDATEN :
          15.05.2004.30WHERE :

          11.05.2004.30ID :
          11.05.2004.30DDDDATEN :
          16.05.2004.30WHERE :

          danke für deine mühe

          Kommentar


          • #6
            scheinst du falsch verstanden zu haben.

            ich meinte print_r($array)

            Kommentar


            • #7
              hmmmm, aber das ist der inhalt doch.
              ich habe:
              echo $meinarray[$l]."___meinarray1<br>";
              echo $meinarray2[$l]."___meinarray2<br>";
              im code.

              die ausgabe:
              15.05.2004.30___meinarray1
              15.05.2004.30DDD___meinarray2
              12.05.2004___meinarray1
              12.05.2004DDD___meinarray2
              13.05.2004.60___meinarray1
              13.05.2004.60DDD___meinarray2
              10.05.2004.60___meinarray1
              10.05.2004.60DDD___meinarray2
              10.05.2004.240___meinarray1
              10.05.2004.240DDD___meinarray2
              01.01.2004.30___meinarray1
              01.01.2004.30DDD___meinarray2
              11.05.2004.30___meinarray1
              11.05.2004.30DDD___meinarray2

              wobei meinarray1 die id des satzes repräsentiert.
              meinarray2 sind die daten. hier habe ich derzeit zum besseren vergleich das datum, zeit, und DDD in der datenbank stehen.

              danke

              Kommentar


              • #8
                Du scheinst offenbar nicht zu wissen, was print_r() mach??? Böse böse!

                Egal, etwas weiter bin ich jetzt schon.

                wenn du jetzt statt deinem in_array kram mal ein

                PHP-Code:
                if($meinarrray[$l] == die_id_die_du_willst)
                  echo 
                'gefunden'
                machst, sollte es doch laufen.

                Übrigens, auf mein PS von eben, darfst du ruhig antworten, soll keine anmache, sondern ernst gemeint sein.

                Kommentar


                • #9
                  hi du,
                  ich bin kurz auf dein P.S eingegangen. s.o. habe allerdings nur oder so ähnlich geschrieben.
                  ich bin im moment fix und fertig weil der code seit tagen nervt und ich nicht weiterkomme.

                  print_r() die ausgabe:
                  15.05.2004.3015.05.2004.30DDD
                  12.05.200412.05.2004DDD
                  13.05.2004.6013.05.2004.60DDD
                  10.05.2004.6010.05.2004.60DDD
                  10.05.2004.24010.05.2004.240DDD
                  01.01.2004.3001.01.2004.30DDD
                  11.05.2004.3011.05.2004.30DDD

                  if($meinarrray[$l] == die_id_die_du_willst)
                  da komme ich mit meiner abfrage ncht zu dem gewünschten ergebnis. es werden ja nur die zwei verglichen. ich muss aber doch im gesamten ergebnis meiner db abfrage suchen. oder bin ich schon ganz deppert :-(.

                  danke

                  Kommentar


                  • #10
                    @ps: okay, war wirklich kurz! aber mittlererweile kann ich deine sätze auch besser lesen.

                    das ist nie im leben die ausgabe von print_r()!

                    Wie du sichst, habe ich das $l aus deinem Code übernommen. Es spricht also nichts dagegen, das ganze in einer schleife anzuwenden, oder???

                    Kommentar


                    • #11
                      hmm das print_r habe ich in der schleife laufen lassen. habe es nochmal angeschaut. das ergebnis ist so.

                      zu der abfrage:
                      PHP-Code:
                      wenn ich frage:
                      if (
                      $meinarray[$l]==$where
                      bekomme ich bei
                      PHP-Code:
                      echo "MEINARRAY".$meinarray[$l]."WHERE".$where
                      folgendes:
                      MEINARRAY01.01.2004.30WHERE10.05.2004.30
                      MEINARRAY10.05.2004.240WHERE11.05.2004.30
                      MEINARRAY10.05.2004.60WHERE12.05.2004.30
                      MEINARRAY11.05.2004.30WHERE13.05.2004.30
                      MEINARRAY12.05.2004WHERE14.05.2004.30
                      MEINARRAY13.05.2004.60WHERE15.05.2004.30
                      MEINARRAY15.05.2004.30WHERE16.05.2004.30

                      daher dachte ich an if in_array

                      gruss
                      EDIT:
                      TobiaZ: mal beispielhaft formatiert!
                      Zuletzt geändert von TobiaZ; 16.05.2004, 21:24.

                      Kommentar


                      • #12
                        hmm das print_r habe ich in der schleife laufen lassen. habe es nochmal angeschaut. das ergebnis ist so.
                        wenn du dir aber mal anschaust, zu was print_r alles in der lage ist, wirst du merken, dass das schwachsinn ist, wiel es nicht mehr bringt, als ein echo.

                        zu der abfrage:
                        wenn ich frage:
                        if ($meinarray[$l]==$where)

                        bekomme ich bei echo "MEINARRAY".$meinarray[$l]."WHERE".$where;
                        folgendes:
                        MEINARRAY01.01.2004.30WHERE10.05.2004.30
                        ...
                        MEINARRAY15.05.2004.30WHERE16.05.2004.30

                        daher dachte ich an if in_array
                        hä???

                        Was hat die Abfrage mit dem Echo zu tun?

                        versuch mal deine Posts n bisschen übersichtlicher zu machen. Du darfst Enter und [PHP]-Tags benutzen!

                        Kommentar


                        • #13
                          ich hoffe ich habe dich durch meine unwissenheit nicht verärgert.
                          auch habe ich solche foren noch nicht oft genutzt und muss mich an die
                          schreibweise noch gewöhnen.
                          sorry

                          hier nun noch ein versuch mit print_r
                          PHP-Code:
                          Array ( [0] => 01.01.2004.30DDD [1] => 10.05.2004.240DDD [2] => 10.05.2004.60DDD [3] => 11.05.2004.30DDD [4] => 12.05.2004DDD [5] => 13.05.2004.60DDD [6] => 15.05.2004.30DDD )
                          Array ( [
                          0] => 01.01.2004.30 [1] => 10.05.2004.240 [2] => 10.05.2004.60 [3] => 11.05.2004.30 [4] => 12.05.2004 [5] => 13.05.2004.60 [6] => 15.05.2004.30 
                          danke

                          Kommentar


                          • #14
                            also, ich bin jetzt auch schon ganz dureen...

                            wie es jetzt aussieht, sollte

                            if(in_array($meinarray,$where))
                            echo 'drinne';

                            wunderbar funktionieren...

                            (bin mir nicht sicher, ob die reihenfolge der parameter richtig ist. evtl musst du meinarray und where tauschen.

                            Kommentar


                            • #15
                              stellt sich aber die frage, warum du das ganze überhaupt in ein array packst.

                              PHP-Code:
                              while($mydaten mysql_fetch_assoc($result))  {
                                if(
                              $mydaten['id'] == $where)
                                  echo 
                              'ist drin';
                                else
                                  echo 
                              'nicht drin';

                              Kommentar

                              Lädt...
                              X