| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

19-11-2009, 21:34
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
Script für Bilderupload
Hi
ich bin auf der Suche nach einem Script aber habe noch nichts passendes gefunden. Ich habe eine Webseite, wo der Benutzer über ein Formular mehrere Objekte eingeben kann. Diese Objekte werden in der DB gespeichert und später kann man über ein formular die Objekte suchen. Die Suchergebnisse werden in einer Tabelle dargestellt und jedes kann über einen Link ausgewählt werden um sich die Details anzusehen. Soweit so gut, es funktioniert alles. ABER der Benutzer möchte nun je Objekt mehrere Bilder hochladen können, die später in der Detailansicht angezeigt werden sollen.
Ich bin also jetzt auf der Suche nach einem passenden Script hierfür. Bisher hab ich aber nur Scripte gefunden wo man Bilder hochladen kann und später alle in einer Galerie angezeigt werden. ich möchte jedoch nur je Objekt die jeweiligen Bilder anzeigen. In der Theorie hab ich mir den Script ablauf wie folgt vorgestellt:
1. Nutzer füllt das Formular aus und klickt auf einen Button durchsuchen um ein Bild auszuwählen
2. Nutzer kann ggf noch weitere Bilder auswählen
3 beim Absenden werden die ausgewählten Bilder hochgeladen und auf dem Server gespeichert. In der DB wird der Pfad der Bilddatei in einer Tabelle gespeichert zusammen mit der Objekt ID damit ich später alle Bilder für Objekt ID xy suchen kann beim Erstellen der Detailausgabe.
Später muss es aber auch die Mgl geben die Bilder für Objekt-ID xy zu löschen - hab ein Bearbeitungsscript für die Details der Objekte.
Da ich noch sehr neu in der PHP Entwicklung bin hab ich noch keinen Plan wie man so ein Skript schreibt. ich hoffe hier kann mir jemand helfen
Grüße
Pebbles
|

20-11-2009, 14:10
|
|
litterauspirna
Registrierter Benutzer
|
|
Registriert seit: Nov 2007
Beiträge: 353
|
|
Letztenendes willst du nciht anderes als eine Bildergalerie erstellen, und zwar zu einem passenden Objekt.
Ansonsten Google gibt dir bei dem Begriff Bilder Upload mit PHP bstimmt einige Ergebnisse. Also ich habe da grad reichis Ergbnisse gefunden.
Alles andere was das löschen angeht kannst du in den jeweiligen Handbüchern wie das Manual oder die Mysql Referenz nachlesen.
Ich denke das reicht erst mal an Infos die du brauchst.
Mfg litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
|

20-11-2009, 14:17
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
ja via google hab ich auch etliche Links gefunden, aber da konnte ich bisher immer nur eine einzige große Bildergalerie erzeugen und nicht mehrere kleine... das ist genau der kleine Punkt an dem ich im Moment scheitere... Ich such ja was wo ich sagen Kann:
objekt A hat die bilder 1,2,3,4 und Objekt B hat die Bilder 10,11,12...
|

23-11-2009, 09:43
|
|
Apfelmus
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 34
|
|
Versuch mal selber den Code zu ertellen ?
wenn du nicht weiter kommst -> sende den Code hier und Frag nach,
dann kann dir auch jemand helfen.
ansonsten wird es schwer.
|

23-11-2009, 11:07
|
unset
 Moderator
|
|
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.778
|
|
Hallo,
Zitat:
Zitat von Pebbles123
ich bin auf der Suche nach einem Script aber habe noch nichts passendes gefunden.
|
Zitat:
Zitat von Pebbles123
Da ich noch sehr neu in der PHP Entwicklung bin hab ich noch keinen Plan wie man so ein Skript schreibt. ich hoffe hier kann mir jemand helfen
|
für beide Fälle haben wir hier gesonderte Foren (und keins von beiden ist das hier  ) - welcher Fall trifft zu: Für ersteren haben wir Appz und Script Gesuche, für zweiteren Projekthilfe, wenn es um die Grundkenntnisse eher schlecht bestellt ist. Im ersteren wirst du wahrscheinlich nicht besonders viel Feedback bekommen, da die Leute sich hier eher eine eigene Galerie bauen. Im zweiteren ist aktive Mitarbeit von dir schon erforderlich.
Also, wohin darf ich verschieben?
|

23-11-2009, 19:56
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
Dann verschieb es bitte auf die 2. Kategorie. Ich wurschtel mich gerade durch ein Scipt und stell grad fest das ich feststecke weil ich nicht weiß wie ich das lösen kann. Hab ein PHP script gefunden was mir Dateien auf den Server hochläd und die ich auch löschen kann aber im Moment hängts an der Logik wie ich das in der Datenbank verknüpfen kann
|

23-11-2009, 20:02
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
Zitat:
Zitat von Apfelmus
Versuch mal selber den Code zu ertellen ?
wenn du nicht weiter kommst -> sende den Code hier und Frag nach,
dann kann dir auch jemand helfen.
ansonsten wird es schwer.
|
Ok ich weiß nicht ob ihr mir hier helfen könnt oder besser in einem anderen Board. Also akt Stand ist, ich hab ein PHP Script was mir die Dateien hochläd. Ich versteh das Script auch relativ grob schon was wo gemacht wird.
http://www.php-space.info/bilder-upload-script/
Jetzt mein Logik problem:
Ich hab ein Formular in dem der Benutzer sein Objekt eingibt. Dort kann ich auch einen Link zu dem upload-Script angeben mit dem der Nutzer ein Bild hochladen kann und ggf weitere. Danach wird das Formular abgesendet und das Objekt in die Datenbank eingetragen.
Jetzt zu meinem Problem: Ich dachte ich könnte das Script so umschreiben, daß der Pfad des hochgeladenen Bilders in die DB eingetragen wird zusammen mit der Objekt-ID. Auf die Art könnte ich eine query machen auf Objekt-ID=x und alle Bilder zu dem Objekt bekommen in der Detailanzeige.
Problem ist nun aber, daß die Objekt-ID erst beim Absenden des Formulars in der Datenbank erzeugt wird, also erst lange nachdem der User seine ganzen Bilder upgeloaded hat. jetzt meine Frage, wie mache ich diese Zuordnung beim upload wenn ich doch noch gar keine Objekt-ID habe?
Geändert von Pebbles123 (23-11-2009 um 20:07 Uhr)
|

23-11-2009, 20:13
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Du könntest die Pfade der hochgeladenen (und bereits verschobenen) Bilder in der Session speichern und wenn dann das Objekt erstellt ist und eine ID hat, die Daten aus der Session in die DB schreiben.
|

23-11-2009, 20:45
|
|
rossixx
Registrierter Benutzer
|
|
Registriert seit: Jul 2003
Ort: Berlin
Beiträge: 461
|
|
vielleicht so
tabelle_1 | objekt_id | objekt_name
tabelle_2 | foto_id | objekt_id | foto_name | etc.
du könntest als erstes dein objekt z.b gallery erstellen und dann erst die fotos hochladen, dann hast du deine objekt_id für die speicherung.
wenn dir das mit den sessions zu kompliziert is fürn anfang.
mein tipp erstmal einfache strukturen bauen, die du auch verstehst, dann darauf aufbauen.
|

23-11-2009, 21:04
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
Huhu
hab jetzt noch ein bisschen experimentiert und noch eine 2. Mgl gefunden die mir einfacher erscheint, aber da scheint noch eine Kleinigkeit zu fehlen.
Hab in meiner HTML folgendes Formular:
HTML-Code:
<form enctype="multipart/form-data" method="POST" action="AddObject.php">
<table border="1" width="610" height="541">
<tr>
<td height="23" width="161">Bild1</td>
<td height="23" width="433"><input type="file" name="bild1"></td>
</tr>
<tr>
<td height="23" width="161">Bild2</td>
<td height="23" width="433"><input type="file" name="bild2"></td>
</tr>
</table>
<p><input type="submit" value="Absenden" name="B1"><input type="reset" value="Zurücksetzen" name="B2"></p>
im php wo das Objekt in die DB eingetragen wird steht dann:
PHP-Code:
$Bild1 = $_POST["bild1"]; $Bild2 = $_POST["bild2"]; is_uploaded_file($_FILES['bild1'][ 'tmp_name1']) and ($_FILES['bild1'][ ' error '] == 0); move_uploaded_file($_FILES['bild1']['tmp_name1'], '/pics/'.$_FILES['bild1']['name1']); is_uploaded_file($_FILES['bild2'][ 'tmp_name2']) and ($_FILES['bild2'][ ' error '] == 0); move_uploaded_file($_FILES['bild2']['tmp_name2'], '/pics/'.$_FILES['bild2']['name2']);
Wenn ich dann in der DB das Objekt angelegt hab, könnte ich in einer 2. Tabelle mit $_FILES['bild1']['name1'] und $_FILES['bild2']['name2'] die Bildpfade mit der Objekt-Id eingetragen werden.
Soweit klingt das super für mich, aber das upload klappt nicht. Es wird keine Datei hochgeladen. Woran könnte das liegen?
Geändert von Pebbles123 (23-11-2009 um 21:10 Uhr)
|

23-11-2009, 21:18
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
Ok vergesst die Frage, hab die Lösung gefunden!!! *FREU*
Muss heißen:
PHP-Code:
is_uploaded_file($_FILES['bild1'][ 'tmp_name']) and ($_FILES['bild1'][ ' error '] == 0); move_uploaded_file($_FILES['bild1']['tmp_name'], './pics/'.$_FILES['bild1']['name']);
|

24-11-2009, 08:57
|
|
Pebbles123
Registrierter Benutzer
|
|
Registriert seit: Nov 2009
Beiträge: 13
|
|
Juhu ich bin eine gaaanze Ecke weiter gekommen *FREU* Kann jetzt über ein Script die Dateien hochladen, die Verknüpfung zum Objekt in der DB herstellen und in der Detailanzeige anzeigen. Beim löschen des Objekts werden auch die Dateien und der DB Eintrag mitgelöscht. Und alles ganz alleine geschrieben. Hab wieder einiges dazugelernt!
Jetzt steh ich vor einem neuen Problem und würde mich über einen Vorschlag freuen wie ich es am besten lösen könnte. Der Benutzer muss nachträglich das Objekt ändern können.
Hierfür hab ich ein Formular was die Daten ausließt aus der DB und zum Ändern in dem Form anzeigt. Ich hab auch schon drin, daß entweder das Bild angezeigt wird oder ein Form Feld zum hochladen eines Bildes falls keines da ist (Benutzer kann bis zu 10 Bildern uploaden).
Aber was mach ich mit den bestehenden Bildern. Die muss der Benutzer entweder einzeln löschen können oder austauschen können.
Wie löst man das am besten? ich seh im Moment 2 mgl:
Entweder man markiert das Bild zum löschen bzw den zu ändernden Bild Pfad und überträgt die Änderung beim Absenden des Formulars oder man generiert einen Button neben jedes Bild damit der Benutzer direkt im Formular das Bild löschen bzw hochladen kann. Ich hoff ihr versteht was ich meine. Welcher Weg wäre der bessere?
|

25-11-2009, 12:34
|
|
rossixx
Registrierter Benutzer
|
|
Registriert seit: Jul 2003
Ort: Berlin
Beiträge: 461
|
|
versuch weiter mit einfachen mitteln zu arbeiten.
ansicht objekt - fotoserie z.b. 10 fotos
im detail bereich neben jedes foto ein kleinen button für edit (neues foto) und eine für delete(foto löschen)
wen der button gedrückt wird, wird entweder die möglichkeit gegeben ein neues hochzuladne oder das foto wird gelöscht. und dann mußt du natürlich wieder in der detailansicht landen.
das wäre meine vorstellung von einem einfachen aufbau.
du solltest natürlich auch anfangen dich mit sicherheitsproblemen zu befassen.
denn jeder der was in deine db packen kann, kann auch ein böser mensch sein und dir was reinpacken was zu problemen führen kann.
oder dein code manipulieren und daten auslesen, die nur du lesen kannst....etc....
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
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.
HTML-Code ist aus.
|
|
|
|
PHP News
|