Daten anzeigen, wenn überboten !

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

  • Daten anzeigen, wenn überboten !

    Hallo !

    Ich möchte die Datensätze ausgeben, welche ich nicht mehr der Höchstbietende bin, aber war !

    Meine Tabelle, inder die Gebote gespeichert werden sieht so vom aufbau aus !

    id | au.. | user| bieter | gebot | max..| zeit | text
    33 | 2 | tom | hans | --- 5--- | 10 | 3434| hallo
    44 | 2 | tom | karl | --- 11--- | 20 | 3344| toll


    Nun weiß ich nicht genau, wie ich den Datensstze auslese, indem ich nicht mehr der Höchstbetiende bin.

    Mein Ansatz (Verknüpfung einer weiteren Tabelle, wegen weiteren Daten)

    PHP-Code:
    $userauktionenmysql_query("SELECT  d.id, d.user, d.titel, d.gebot,
     d.gebote, d.bildurl, d.alt, d.status, d.endzeit, d.besucher, u.auktionsid, 
    u.user, u.bieter FROM dateauktionen as d inner join dategebote as u 
    WHERE  u.bieter = '
    $o_user' and d.status='a' and d.endzeit>$aktuell 
    order by u.bieter DESC LIMIT 7"
    ); 
    if(u.bieter <> '$o_user' aber o_user war mal höchstbetiender {
    echo Daten
    }

    Danke
    EDIT:
    line break sponsored by asp2php, bitte demnächst selbst dafür sorgen
    Zuletzt geändert von asp2php; 01.11.2005, 18:02.

  • #2
    du hast doch 'ne Zeit-Spalte, sortiere danach dann hast du's, etwa so

    select ... from datenbegote where bieter = 'DerNameDesGesuchten' order by zeit desc limit 1

    dann hast du den zuletzt gebotenen Betrag von ihm, oder verstehe ich dich falsch.

    Kommentar


    • #3
      das problem ist, das es mehrere Auktionen überboten werden können !

      Deshalb kann ich Limit nicht auf 1 setzten !

      Es sollen alle auktionen angezeigt werden, wo ichnicht mehr der Höchstbietende bin.

      Eigentlich muß er mir nur die auktionsid anzeigen, die ungleich bieter sind ???????

      Kommentar


      • #4
        schau dir den: http://www.php-resource.de/forum/sho...n&pagenumber=1 mal an

        Kommentar


        • #5
          Verstehe ich das richtig ? Der Höchstbietende steht im Feld 'bieter' ?
          Warum denn nicht
          Code:
          select * from deine_tabelle where bieter!='myself'
          Gruss

          tobi
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar


          • #6
            Das Problem ist, das mir die Höchstbietenden
            ausgegeben werden, die ein höheres Gebot abgegeben haben.
            Ich muß aber prüfen, ob ich als user auf diese Auktion schon geboten habe, überboten wurden bin und von welchem User.
            Zuletzt geändert von meierhans; 04.11.2005, 20:28.

            Kommentar


            • #7
              Ich habe am Sql-String rumgebastelt, jetzt gibt er mir alle Auktionen aus, auf dem unterschiedliche User mehr geboten haben.

              PHP-Code:
              $userauktionenmysql_query("SELECT distinct d.id, d.user, d.titel, d.gebot, d.gebote, d.bildurl, d.alt, 
              PHP-Code:
               d.statusd.endzeitd.besucherd.bieteru.auktionsidu.useru.bieter 
              PHP-Code:
              FROM dateauktionen as d inner join dategebote as 
              PHP-Code:
              WHERE  u.auktionsid d.id and u.bieter 'o_user'  and endzeit>='$aktuell' 
              PHP-Code:
              and status ='a' and u.bieter d.bieter and d.bieter != 'o_user' order by d.endzeit DESC LIMIT 10"); 
              Zuletzt geändert von meierhans; 04.11.2005, 20:31.

              Kommentar


              • #8
                http://www.php-resource.de/forum/sho...threadid=47906

                Bitte Regeln lesen und befolgen! Asp2php hat deinen ersten beitrag bereits editiert. den letzten machst du bitte selber. TobiaZ

                Kommentar


                • #9
                  Dann bau ein Feld(teilgenommen) in die Tabelle ein, dass du mit 1 füllst wenn du an der Auktion teilgenommen hast
                  Code:
                  select * from deine_tabelle where bieter!='myself' and teilgenommen='1'
                  Gruss

                  tobi
                  Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                  [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                  Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                  Kommentar


                  • #10
                    Leider klappt das auch nicht ! Also, wenn ich es richtig verstanden habe, setzte ich den Wert 1 auf User "ralf und Wert 2 auf User "pam" usw.

                    Wenn ich aber zuvor bieter != $o_user prüfe, somit werden die Werte in teilgenommen, nicht mehr auf die Auktion geprüft, da ich sie ja zuvor ausgeschlossen habe !

                    Es muß doch möglich sein, den gebotsverlauf auszulesen, auf die ich geboten habe, und dann den User der mich überboten hat !

                    Hier mal meine Tabelle !



                    Mein SQL-String

                    PHP-Code:
                    mysql_query("SELECT d.id, d.user, d.titel, d.gebot, d.gebote, d.bildurl, d.alt, d.status, 
                    PHP-Code:
                      d.endzeitd.besucherd.bieteru.auktionsidu.user
                    u.bieter FROM dateauktionen as d inner join dategebote as u WHERE d.endzeit>='$aktuell' and [/PHP]
                    PHP-Code:
                    d.status='a' and u.bieter!='$user' and u.teilgenommen '3'  order by u.gebot DESC LIMIT 10"); 
                    Zuletzt geändert von meierhans; 04.11.2005, 20:31.

                    Kommentar


                    • #11
                      Also wenn ich mir deine Struktur so anschaue. Funzt das denn nicht ?
                      Code:
                      select * from table where teilgenommen = 1 and bieter != me
                      Wieso trägst du etwas anderes als 1 und 0 bei teilgenommen ein. ? Ich dachte es geht dir nur darum, zu wissen wo DU teilgenommen hast
                      ( 0 --> nicht teilgenommen und 1 --> teilgenommen )

                      Gruss

                      tobi
                      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                      Kommentar


                      • #12
                        @meierhans : Brich doch BITTE mal deine postings um...dann bekommst du sicherlich auch mehr Antworten. Es hat hier fast niemand Lust, immer wieder seitlich zu scrollen - selbst mit einer 1280 x 1024 er Auflösung sehe ich nur die Hälfte des codes....

                        Kommentar


                        • #13
                          Original geschrieben von jahlives
                          Also wenn ich mir deine Struktur so anschaue. Funzt das denn nicht ?
                          Code:
                          select * from table where teilgenommen = 1 and bieter != me
                          Wieso trägst du etwas anderes als 1 und 0 bei teilgenommen ein. ? Ich dachte es geht dir nur darum, zu wissen wo DU teilgenommen hast
                          ( 0 --> nicht teilgenommen und 1 --> teilgenommen )

                          Gruss

                          tobi
                          Danke zunächst einaml für deine Hilfe !

                          Kann das denn auch für alle User funktionieren, es soll in dem Userprofil eines einzelnen, angezeigt werden, ob er überboten wurden ist !
                          Das bedeutet wiederum, das jeder User der ein Gebot abgegeben hat, auch den Wert 1 zugeteilt wird.
                          Deshalb wird das wohl nicht funtionieren

                          Kommentar


                          • #14
                            Für alle User wohl eher weniger. Du musst in diesem Falle ja ALLE User ID's, die teilgenommen haben, dort eintragen.

                            Gruss

                            tobi
                            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                            Kommentar

                            Lädt...
                            X