Ankündigung

Einklappen
Keine Ankündigung bisher.

Überbotene Auktionen anzeigen

Einklappen

Neue Werbung 2019

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

  • Überbotene Auktionen anzeigen

    Hi !

    Möchte nur die Auktionen ausgeben, die von einem anderem User überboten wurden sind.

    In meiner Tabelle, sind die Werte des Max Gebotes, der Name des Bieters, die auktionsid....

    Nun prüfe ich ob ich als bieter das höchste gebot abgegeben habe, dies ist kein problem, aber wie soll ich prüfen, wenn ein andere User mehr geboten hat?
    Ich habe Probleme mit dem Max Gebot, kann man es nicht in der where bedingung anfügen ?
    Code:
    $userauktionen= mysql_query("SELECT * FROM dateauktionen WHERE bieter='$o_user' && gebot = Max && endzeit>='$aktuell'  order by endzeit DESC"); $zaehler=0; while ($userauktion= mysql_fetch_array($userauktionen))  { $zaehler++;  if($userauktion[bieter]=="$o_user" && $userauktion[auktionsid]=="$auktionsid" && $userauktion[gebot]!="Max"{ $userauktionen= mysql_query("SELECT * FROM dateauktionen WHERE gebot = Max && endzeit>='$aktuell'  order by endzeit DESC");}


  • #2
    Wenn dir hier keiner antwortet, liegt das nicht an der Komplexität des Problems, sondern an der Fragestellung. Bzw. an dienem Code. Du kannst kaum erwarten, dass jemand diesen absolut unformatierten (und unvollständigen) Code anschaut. Da ich heute gute Laune habe, habe ich das Ganze mal umgestaltet (ohne Inhaltliche Änderungen, ausser den zwei fehlenden Klammern):
    PHP-Code:
    <?php
    mysql_query
    ("SELECT * FROM dateauktionen 
                         WHERE bieter = '
    $o_user' && gebot = Max && endzeit >= '$aktuell'  
                         ORDER BY endzeit DESC"
    );
    $zaehler 0
    while (
    $userauktion mysql_fetch_array($userauktionen))  { 
        
    $zaehler++;  
        if(
    $userauktion[bieter] == "$o_user&& 
           
    $userauktion[auktionsid] == "$auktionsid&& $userauktion[gebot] != "Max"
               
    mysql_query("SELECT * FROM dateauktionen 
                                    WHERE gebot = Max && endzeit >= '
    $aktuell'  
                                    ORDER BY endzeit DESC"
    );
        }
    }
    ?>
    Ich denke, dass selbst du zugeben musst, dass das leichter zu lesen ist. Und vor wir zum eigentlichen Problem kommen, wenn du statt SELECT * FROM zu schreiben (was fast immer schlecht ist), die Attribute einzeln aufführen würdest, dann hätten wir wenigstens eine Ahnung, wie deine Tabellen aufgebaut sind. Eine genauere Tabellenbeschreibung wäre noch besser. So kann ich nur vermuten. Aber so ähnlich sollte das gehen:
    PHP-Code:
    <?php
    $abfrage 
    "SELECT a.gegenstand, a.bieter Ueberbieter, a.gebot Hoeheresgebot, ..., b.gebot Meingebot
                       FROM dateauktionen a
                       INNER JOIN dateauktionen b ON a.id = b.id AND a.gebot > b.gebot
                       WHERE b.bieter = '
    $meinname'";
    $userauktionen mysql_query($abfrage) or die("Fehler: " mysql_error() . "
    $abfrage
    "
    ;;
    while(
    $userauktion mysql_fetch_array($userauktionen)){
        echo 
    $userauktion['gegenstand'] . " : " $userauktion['Meingebot'] . " : " .  
                
    $userauktion['Hoeheresgebot'] . " : " $userauktion['Ueberbieter'] . "
    \n"
    ;
    }
    ?>
    Gruss
    L

    Kommentar

    Lädt...
    X