Suchen
Inside Forum
Nützliche Links
Werbung
phpforum.de Tipp
PHP Jobs
 
phpforum.de bei Facebook
 
phpforum.de bei Twitter
 
PHP Test



Zurück   PHP Forum: phpforum.de > Datenbanken > Datenbanken

Datenbanken MySQL und co.

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.02.2006, 13:18
Steeven Steeven ist offline
Engagierter Besucher
 
Registriert seit: 06.10.2005
Beiträge: 261
Standard

Hallo,

ich hab schon so einiges gesehen an foto voting scripten, aber irgendwie sind die zu umfangreich oder haben zu viel drin.
Ich hab user in einer Datenbank und auch dessen Bilder bis zu 5. Jetzt wollte ich, daß man diese Bilder von 1 bis 10 bewerten kann. Aber weiß nicht wie ich das Datenbankdesign machen muss dafür. Weil es soll ja für jedes Bild auch der Durchschnitt beim Fotovoting ausgegeben werden, dabei darf niemand zweil mal für ein Bild voten dürfen.

Könnt Ihr mir helfen?

Steeven
Mit Zitat antworten
  #2  
Alt 02.02.2006, 16:01
deetee deetee ist offline
Engagierter Besucher
 
Registriert seit: 02.11.2004
Beiträge: 1.370
Standard

EINE Möglichkeit wäre, alle Bilder anhand der IDs in Pakete aufzuteilen. Paket 1 hat Bilder von 1-100, Paket 2 von 101-200, usw. Jeder Nutzer bekommt immer ein Paket zugewiesen. Dabei kann man auch 3 Gruppen bilden. Gruppe eins bekommt von insgesamt 60 Paketen z.B. 1-20, Gruppe 2 bekommt 21-40 und Gruppe 3 bekommt 41-60. Ist ein Nutzer mit seinem Paket durch, wird er einer anderen Gruppe zugewiesen. So muss er nicht zweimal für ein Bild voten.

Man muss sich im Prinzip die letzte ID des Bildes merken, die ein Nutzer gevotet hat. So weiß man, ab wo man ihm beim nächsten Besuch die nächsten Bilder aus seinem Paket zeigen muss.
Gibt man jedem Paket eine eigene Tabelle, so können neue Bilder problemlos hinzugefügt werden, da IDs ja fortlaufende Nummern sind.
Erst wenn ein Nutzer die letzte ID eines Pakets gevotet hat, darf er das Paket wechseln. Wohlgmerkt zu einem Paket innerhalb seiner Gruppe. Hat er alle Pakete durch, wechselt er die Gruppe und dort wieder von Paket zu Paket.

Man muss sich auch die letzten Daten zu jedem Nutzer merken/speichern. Also welche ID in welchem Paket zuletzt von diesem Nutzer gevotet wurde. Denn wenn ein Nutzer alle Gruppen und damit auch alle Pakete durch hat, dann hat er ja eigentlich keine Bilder mehr zum voten. Deshalb kann man diesen Nutzer dann wieder seiner ersten Gruppe und seinem ersten Paket zuweisen und einfach ab der ID weiter voten lassen, wo er in diesem Paket aufgehört hat, weil es zu diesem Zeitpunkt keine weiteren Bilder mehr gab.

Hoffe das war verständlich. So ein Votingsystem ist nicht so einfach wie es nach außen hin scheint. Man muss einiges beachten.
Allerdings gibt es auch schwierigere Systeme, als dass man immer nur ein bild anzeigt und dieses bewerten lässt. Es gibt Vote Seiten, da werden immer 2 Bilder gezeigt und man muss sich für eins entscheiden. Hier sind weitaus mehr Faktoren zu beachten, obwohl es sich eigentlich noch simpler anhört.
Mit Zitat antworten
  #3  
Alt 02.02.2006, 16:20
Steeven Steeven ist offline
Engagierter Besucher
 
Registriert seit: 06.10.2005
Beiträge: 261
Standard

hm, sorry, aber verstanden hab ich es nicht. User sind doch zichtausende und manche haben Bilder und manche widerum nicht. Ist sowas ähnliches wie Kontaktanzeigen. Dort sollte ein User die Bilder bewerten von jemand anderen. Wenn er gevotet hat für das bild, dann sollte er gesperrt werden für dieses Bild.

Und dann sollte ausgerechnet werden wie im Durchschnitt gevotet wird. Die User haben doch alle eine UserID kann man nicht in der Datenbank festahlten welche user id für wen und welche Bildnummer gevotet hat?
Mit Zitat antworten
  #4  
Alt 02.02.2006, 16:40
wollenschlaeger wollenschlaeger ist offline
Engagierter Besucher
 
Registriert seit: 08.04.2004
Beiträge: 525
Standard

Die Tabelle könnte wie folgt aussehen:

ID
ID_Bild
ID_User
Bewertung

Jetzt kannst du immer abfragen, ob dieses Bild vom User schon bewertet wurde und du kannst für jedes Bild den Durschschnitt der Bewertung ausrechnen.

Natürlich würde auch noch ein Datum möglich sein, dann kannst das ganze auch noch Zeitlich eingrenzen
Mit Zitat antworten
  #5  
Alt 02.02.2006, 16:48
deetee deetee ist offline
Engagierter Besucher
 
Registriert seit: 02.11.2004
Beiträge: 1.370
Standard

Zitat:
wollenschlaeger postete
Die Tabelle könnte wie folgt aussehen:

ID
ID_Bild
ID_User
Bewertung

Jetzt kannst du immer abfragen, ob dieses Bild vom User schon bewertet wurde und du kannst für jedes Bild den Durschschnitt der Bewertung ausrechnen.

Natürlich würde auch noch ein Datum möglich sein, dann kannst das ganze auch noch Zeitlich eingrenzen
Hallo? Wieviel Datenmüll willst du denn speichern? So wie du das hier erklärst, müsstest du zu jedem User die BildIDs speichern, die er gevotet hat. Das allein kann schon eine Datenbank sprengen, wenn man eine große aktive community betreibt.
Aber dazu musst du dann auch noch vor jeder Bildanzeige prüfen, welches Bild für diesen Nutzer angezeigt werden darf. je größer die Liste an gevoteten Bildern eines Nutzers wird, desto länger dauert diese Überprüfung. Irgendwann frisst allein diese Überprüfung alle Ressourcen des Systems, weil ein Nutzer 1 Mio. Bilder gevotet hat die alle verglichen werden müssen.
Mit Zitat antworten
  #6  
Alt 02.02.2006, 16:59
Steeven Steeven ist offline
Engagierter Besucher
 
Registriert seit: 06.10.2005
Beiträge: 261
Standard

daher ja meine Frage, also ist es besser mit einer Textdatei oder? Chats laufen ja auch über Textdateien
Mit Zitat antworten
  #7  
Alt 02.02.2006, 18:23
deetee deetee ist offline
Engagierter Besucher
 
Registriert seit: 02.11.2004
Beiträge: 1.370
Standard

Textdatei? Was willst du darin speichern? Ich kann dir gerade nicht folgen.
Mit Zitat antworten


Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu
Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Foto Was für ein Format clickjob Datenbanken 4 19.02.2006 17:58
Foto aus Datenbank II Airis PHP 4 29.12.2005 15:42
Foto aus Datebnbank Airis PHP 12 28.12.2005 18:51
Foto bearbeiten butrov79 PHP 8 15.06.2005 15:28
Voting Ochse PHP 2 23.06.2003 18:25


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:11 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Powered by NuWiki v1.3 RC1 Copyright ©2006-2007, NuHit, LLC