brauche hilfe bei einer SQL abfrage

PHP, Ajax, CSS, HTML, Javascript
Eben für die wirklich Harten, die alles selber machen.
Antworten
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

brauche hilfe bei einer SQL abfrage

Beitrag von dagobert »

ich brauch nochmal rat....ich komm wieder nich weiter.

ich habe eine tabellenstruktur

entry_id
user_id
user_points

wie stell ich das nun am geschickstesten an eine abfrage ähnlich dieser ins phpbb einzubauen. ich bekomm das einfach nicht hin.

Code: Alles auswählen

SELECT SUM(user_points) FROM phpbb_table WHERE user_id = $user_id
:roll: :!:
Zuletzt geändert von dagobert am Fr 29.Jul, 2005 01:35, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

So?

Code: Alles auswählen

$sql = "SELECT sum(user_points) as total_points FROM phpbb_table
	WHERE user_id = $user_id";
if (!$result = $db->sql_query($sql));
{
	message_die(GENERAL_ERROR, 'Could not fetch user points', '', __LINE__, __FILE__, $sql);
}

$row = $db->sql_fetchrow($result);
$user_points = $row['total_points'];
$db->sql_freeresult($result);
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

och man... das AS total_points hatt ich vergessen....nun klappts ! super, danke !

wofür steht das

Code: Alles auswählen

$db->sql_freeresult($result);
das leert das result oder ? muss / sollte man das angeben oder isses nich so wichtig?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Das schliesst u.a. auch den dann nicht mehr genutzten Kanal zur Datenbank, also ja: Benutzen. Aber auch nur, wenn $result gefüllt ist. Also bei einem SELECT z.B.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

nach jedem datenbank befehl oder reicht einmal am ende des files ?
(ich muss wohl einiges noch ausbessern ;) :D )
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Nach jedem beendeten SELECT.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

alles klar....vielen dank nochmal !
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

so, kleine levelsteigerung ;)

wie müsste die sql abfrage aussehen, wenn ich die nun nach total_points sortiert haben will und nach user_id zusammengefasst ? (es sind ja pro user mehrere einträge in der tabelle)

irgendwie so ?

Code: Alles auswählen

SELECT sum(user_points) AS total_points, user_id FROM phpbb_table
GROUP BY user_id
ORDER BY total_points ASC
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

so, kleine levelsteigerung
*hüstel*
Mehr nicht?

Ja so ist das dann auch richtig.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

Mehr nicht?
forder es nicht heraus...
spätestens wenn du zur analyse eines problems durch meinen code steigen musst, haste den endgegner erreicht ;) :D

is das eigentlich normal, dass die erste version eines mods teilweise aussieht wie ne frisch gekochte buchstabensuppe ? :heiss:



die abfrage hat aber wunderbar geklappt. war doch nich so kompliziert wie ich dachte.
aber ich kann jetzt schon absehen, dass ich bald meine nächste frage dazu habe. da will ich aber vorher noch gucken, ob ich mir die lösung herleiten kann.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

forder es nicht heraus...
spätestens wenn du zur analyse eines problems durch meinen code steigen musst, haste den endgegner erreicht
Nur zu :D
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

was sagt mir dieser fehler ?

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /www/htdocs/w0058caf/forum/db/mysql4.php on line 318

kommt nur auf einem testboard, wo ich nun ne alpha meines mods installieren wollte. in meinem forum rennt der gleiche mod mit den gleichen dateien und gleicher phpbb version ohne probs.
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Kann es sein das du bei deinem anderem Board die mysql.php anstelle der mysql4.php verwendest?
Ich hatte da auch schonmal komplett unterschiedliche ergebnisse, weil die mysql4.php nicht abwärtskompatible ist und mein Code eine veraltete Programmierweise beinhaltet hat. :(

Poste mal den code der diesen Fehler verursacht (nicht den aus der mysql4.php, sondern deinen).
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /www/htdocs/w0058caf/forum/db/mysql4.php on line 318
Das bedeutet, daß in einem Script die Zeile $db->sql_freeresult($result); vorhanden ist, ohne daß $result einen Wert hat. Das ist auch nur bei einem voran gegangenen SELECT der Fall. Alle anderen Befehle erzeugen keine Connect-ID, bzw. benötigen keine, da ja keine Daten von der Datenbank gelesen werden sollen.
Suche also mal nach dieser Zeile in dem Script, was diese Fehlermeldung erzeugt nach dieser Zeile ohne vorheriges SELECT...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

hmm....nun hab ich die dinger rausgenommen und es geht (aber die standen jedesmal nach ner select-geschichte)

danke!


EDIT: manchmal hab ich auch wirklich ein brett vorm kopf. ich habs nun raus: ich hatte in 2 von 3 dateien je 1 mal die falsche var angegeben: $db->sql_freeresult($sql);

nu rennts....
Zuletzt geändert von dagobert am Sa 27.Aug, 2005 19:10, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Oder so ;)

Tipp, wenn etwas partout nicht will: Geh raus, lauf eine Runde oder lenk dich anderweitig ab, dann gehts wieder.
Hilft mir auch immer wieder enorm weiter !
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

^^ Kann ich nur bestätigen!!!
Mir ist sogar schonmal bei einem Bierchen, um die Ecke, die Lösung eingefallen. :D
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
dagobert
Beiträge: 457
Registriert: Mo 08.Mär, 2004 13:46
Wohnort: Altenkirchen
Kontaktdaten:

Beitrag von dagobert »

hehe......

aber mein problem war, dass ich nichmal wusste wo ich suchen muss, weil ich die fehlermeldung nicht verstand. (vor allem weils komischerweise im anderen board keine zicken macht mit der defekten datei)

ohne euch hätt ich da bestimmt ne woche gesucht..... ;)
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Dan bin ich ja froh, Dir die Suchzeit verkürzt zu haben :cool:
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Antworten