php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.01.2006, 18:32  
Benutzer
 
Registriert seit: 15.09.2004
Beiträge: 57
pixelcut
Standard Überdenken des Konzept: Eigene Bildergalerien für User

Hallo,

ich bin nun seit einigen Tagen am überlegen, wie ich in einer Community, wo die User bereits selbst Bilder und Videos uploaden können, den Usern die Möglichkeit geben kann, mehrere Galerien (also nach Bedarf) hochzuladen. Momentan mache ich das wie folgt:

Im eigenen Account kann der User 10 Bilder uploaden. Beim Upload prüfe ich zuerst, ob bereits ein Ordner auf dem Server vorhanden ist a`la (/userbilder/userid/). Wenn nicht, wird er angelegt. So, die 10 Bilder werden dann geuploadet und jeweils in 1.jpg - 10.jpg umbenannt und in den Ordner geladen. In der Tabelle der User habe ich die Felder:

userimage1
bis
userimage10

jeweils INT(1) mit Standard 0. Alleine das finde ich schon sehr unflexibel, kam aber derzeit auf nichts anderes. Man stelle sich vor, ich würde die Anzahl jetzt erhöhen auf 50 und müsste 50 Tabellenfelder haben.

Was ich möchte ist eigentlich: User kann Ordnerbeschreibung eingeben und beliebig viele Ordner anlegen (innerhalb seines Ordners /userbilder/userid/) und dort dann sagen wir bis zu 30 Bilder uploaden.

Ich sehe da 2 Möglichkeiten:

1. Einfach alle Bilder aus der DIR auslesen und nichts in die DB schreiben. Da gibt es aber dann das Problem, das jedes Bild von uns manuell freigeschaltet werden soll (wie bislang auch).

2. Irgendeine Datenbanklösung, die mir bislang einfach noch nicht eingefallen ist.

Ich würde mich über einige Meinungen / Ideen freuen.

Grüße
pixelcut ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.01.2006, 20:11  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Ich würde vorschlagen, dass du für die Galerien zwei Tabellen (galleries und gallery_images) anlegst. In der Tabelle galleries erfolgt die Vergabe einer eindeutigen Id jeder Galerie, die Zuordnung zu einem Benutzer und die Vergabe eines Namens. Natürlich lässt sie die Tabelle auch noch auf Dinge wie Bilder pro Seite etc. erweitern. In der Tabelle gallery_images werden dann die Zuordnungen der Bildnamen zur entsprechenden Galerie vorgenommen. Auf diese Art und Weise kann jeder Benutzer beliebig viele Galerien mit beliebig vielen Bildern erstellen. Alle Bilder befinden sich dabei in einem Verzeichnis.
Die Struktur der Tabellen könnte dabei so aussehen (SQL-Code für MySQL, ungetestet):
Code:
CREATE TABLE galleries (
    galleryid INT UNSIGNED NOT NULL auto_increment,
    userid INT UNSIGNED NOT NULL,
    name VARCHAR(100) NOT NULL,
    PRIMARY KEY(galleryid),
    KEY(userid)
);

CREATE TABLE gallery_images (
    imageid INT UNSIGNED NOT NULL auto_increment,
    galleryid INT UNSIGNED NOT NULL,
    imagename VARCHAR(255),
    PRIMARY KEY(imageid),
    KEY(galleryid),
    UNIQUE KEY(imagename)
);
xabbuh ist offline   Mit Zitat antworten
Alt 16.01.2006, 18:31  
Benutzer
 
Registriert seit: 15.09.2004
Beiträge: 57
pixelcut
Standard

Hallo xabbuh,

der Ansatz ist schon sehr gut, vielen Dank! Würde mich über weitere
Ideen und Ansätze freuen.

grüße
pixelcut ist offline   Mit Zitat antworten
Alt 16.01.2006, 18:40  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

xabbuh's Vorschlag ist für meinen Geschmack bei Verwendung einer Datenbank bereits der optimale. Für deinen Fall bräuchtest du dann allerdings noch einen Flag bei "gallery_images" für "activated", Default 0. Den müsstet ihr nach Freischalten des Bildes auf 1 setzen.

Interessieren könnte dich grundsätzlich dieser Link zum Aufbau von Tabellenstrukturen:
http://de.wikipedia.org/wiki/Normali...28Datenbank%29
Zergling-new ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
User erkennen (ohne session + ohne cookies + prob mit IP) PHP Tipps 2007 8 30.12.2007 23:35
SELECT ... WHERE ... Nur ein User! Mike² Datenbanken 1 30.09.2006 19:15
User erst nach Freigabe freigeben Nevermind Datenbanken 7 07.05.2006 23:54
Login Bereich für mehrere User mokus PHP Tipps 2006 4 20.04.2006 16:57
Aus mehreren Tabellen (Foren) den Top User ermitteln wizzardxx PHP Tipps 2006 9 15.02.2006 10:39
mysql_connect verbindet nicht wenn user passwort hat PHP Tipps 2005-2 3 28.10.2005 15:53
Session: Untersch. Seiten f. eingeloggte User und norm. User PHP Tipps 2005-2 2 20.07.2005 12:46
[Erledigt] MySQL user rausfinden Datenbanken 4 26.05.2005 12:15
Counter für registrierte user PHP Tipps 2004-2 3 26.12.2004 11:32
PHP linux user wechseln PHP-Fortgeschrittene 12 05.12.2004 16:11
Aktuelle Anzahl eingeloggter User ermitteln? PHP Tipps 2004-2 6 02.12.2004 13:03
User intenfication ohne Cookies und User hat temporale IP fender PHP Tipps 2004-2 1 15.11.2004 17:13
[Erledigt] Access denied for user: '@localhost' / SYSTEM@localhost Datenbanken 0 10.11.2004 20:35
User identifizieren TRW PHP Tipps 2004 1 21.10.2004 21:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
eigne bildergalerien, php ordner konzept bilder

Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.