Kleinsten werte aus der Datenbank auslesen...

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Dagtor
Mitglied
Beiträge: 36
Registriert: 11.07.2008 00:12
Wohnort: Bamberg

Kleinsten werte aus der Datenbank auslesen...

Beitrag von Dagtor »

Hallo zusammen,

brauche mal wieder hilfe...

Ich will den kleinsten wert (Gewicht) eines bestimmten Users aus mehreren daten einträgen einer Tabelle ermitteln...
Hab im Forum und in anderen MOD's etc. keinen Hinweis gefunden wie es richtig ist...

so sieht mein Code aus:

Code: Alles auswählen

				$sql = 'SELECT MIN(tvp_unit_aktgew) AS min_wight
			FROM ' . TVP_UNIT_TABLE . '
				WHERE  tvp_unit_user = ' . (int) $user_id;
			$result = $db->sql_query($sql);

				$min_gew_db = (int) $db->sql_fetchfield('min_wight');
Wäre für eure hilfe sehr dankbar..

Gruß Dagtor
Sport ist ein Privileg der Landlosen
Benutzeravatar
Frank1604
Ehemaliges Teammitglied
Beiträge: 2106
Registriert: 07.11.2007 09:25
Wohnort: Einhausen
Kontaktdaten:

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von Frank1604 »

Sortiere nach Gewicht, dann ist der kleinste Wert zuerst und du brauchst ihn dir nur noch zu schnappen.

Code: Alles auswählen

$sql = 'SELECT tvp_unit_aktgew 
         FROM ' . TVP_UNIT_TABLE . '
            WHERE  tvp_unit_user = ' . (int) $user_id . ' 
            ORDER BY tvp_unit_user;
         $result = $db->sql_query($sql);

         $min_gew_db = (int) $db->sql_fetchfield('tvp_unit_user');
Gruß, Frank
Meine Meinung steht fest. Bitte verwirrt mich nicht mit Tatsachen!
Dagtor
Mitglied
Beiträge: 36
Registriert: 11.07.2008 00:12
Wohnort: Bamberg

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von Dagtor »

Erst mal danke Frank
Aber dein Vorschlag Funktioniert leider garnicht...
Im Notepad ++ fehlt ihm scheinbar was... da sind alle anschliessenden Zeilen auch ncoh gleich Grau... Complett!

Habs damit zwar trotzdem verucht...
resultat: weiße Seite..

noch ne idee???

Code: Alles auswählen

$sql = 'SELECT tvp_unit_aktgew
         FROM ' . TVP_UNIT_TABLE . '
            WHERE  tvp_unit_user = ' . (int) $user_id . '
            ORDER BY tvp_unit_aktgew;
         $result = $db->sql_query($sql);

         $min_gew_db = (int) $db->sql_fetchfield('tvp_unit_aktgew');
Sport ist ein Privileg der Landlosen
Benutzeravatar
Frank1604
Ehemaliges Teammitglied
Beiträge: 2106
Registriert: 07.11.2007 09:25
Wohnort: Einhausen
Kontaktdaten:

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von Frank1604 »

Joar, nen ' fehlt :oops:

Code: Alles auswählen

    $sql = 'SELECT tvp_unit_aktgew
             FROM ' . TVP_UNIT_TABLE . '
                WHERE  tvp_unit_user = ' . (int) $user_id . '
                ORDER BY tvp_unit_aktgew';
             $result = $db->sql_query($sql);

             $min_gew_db = (int) $db->sql_fetchfield('tvp_unit_aktgew');
Gruß, Frank
Meine Meinung steht fest. Bitte verwirrt mich nicht mit Tatsachen!
Dagtor
Mitglied
Beiträge: 36
Registriert: 11.07.2008 00:12
Wohnort: Bamberg

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von Dagtor »

Hallo Frank...

Leider immer noch nicht...

Noch ne idee...?!?

Bin Ratlos...
Sport ist ein Privileg der Landlosen
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von Boecki91 »

Code: Alles auswählen

    $sql = 'SELECT tvp_unit_aktgew
             FROM ' . TVP_UNIT_TABLE . '
                WHERE  tvp_unit_user = ' . (int) $user_id . '
                ORDER BY tvp_unit_aktgew';
             $result = $db->sql_query($sql);

             $min_gew_db = (int) $db->sql_fetchfield('tvp_unit_aktgew'); 
Wenn man den richtigen BBCode kennt kann man das hier auch farbig machen (in jedem phpBB3)

Code: Alles auswählen

[code=php]
[/code]
Ich sehe da keine PHP Syntax-Fehler mehr, hast du es den schon getestet? Fehlermeldung?
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Dagtor
Mitglied
Beiträge: 36
Registriert: 11.07.2008 00:12
Wohnort: Bamberg

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von Dagtor »

Ja, ich habs getestet,

das "leider nicht" war auch auf die generelle Funktion bezogen... Es gibt mir nicht den korrekten Wert zurück, besser gesagt garkeinen...

Sonnst funktioniert das ganze Skript ohne Probleme... Variablen sind auch nicht doppelt gesetzt oder so... Das ganze läuft auf nem ansonsten absolut cleanen 3.0.5 Testboard...

Tja, was tun?!?
Sport ist ein Privileg der Landlosen
Benutzeravatar
oxpus
Ehemaliges Teammitglied
Beiträge: 5394
Registriert: 03.02.2003 12:33
Wohnort: Bad Wildungen
Kontaktdaten:

Re: Kleinsten werte aus der Datenbank auslesen...

Beitrag von oxpus »

Hallo,

wenn doch mehrere Werte für einen User enthalten sind, dann darf man auch nur einen Wert abfragen. Und wenn es der kleinste sein soll:

Code: Alles auswählen

$sql = 'SELECT tvp_unit_aktgew
    FROM ' . TVP_UNIT_TABLE . '
    WHERE tvp_unit_user = ' . (int) $user_id . '
    ORDER BY tvp_unit_aktgew
    LIMIT 1';
$result = $db->sql_query($sql);

$min_gew_db = (int) $db->sql_fetchfield('tvp_unit_aktgew'); 
Man beachte das "LIMIT".
"$db->sql_fetchfield()" liefert nämlich nur einen Wert für ein Feld zurück, ansonsten false...
Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“