Datei upload
Eingetragen von 8026 (14)
am 12.06.2012 - 07:39 Uhr in
am 12.06.2012 - 07:39 Uhr in
Hi Leute,
ich hab folgendes Problem/Aufgabe:
ich möchte eine Seite auf der Benutzer eigene Dateien hochladen können.
Mein Code für eine einfache html Seite:
<html>
<head>
<title>uploadseite</title>
</head>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="datei" size="30" maxlength="1000"><br>
<input type="submit" value="hochladen">
</form>
</body>
</html>
und die upload.php
<?php
move_uploaded_file($_FILES["datei"]["tmp_name"], "upload/datei2.txt");
echo "Datei erfolgreich hochgeladen!";
?>
Also wenn ich das normal auf dem Webserver liegen habe funktioniert es einwandfrei. Wie kann ich das aber in Drupal verwirklichen? Alle Module die sich mit Dateiupload beschäftigen bieten ja "nur" die Funktion über das file_field für Administratoren Dateien an eine Seite anzuhängen. Oder hab ich da was falsch verstanden?
Ich benutze drupal 7 wäre aber auch gut wenn es unter der 6er Version geht.
Gruß Stefan
- Anmelden oder Registrieren um Kommentare zu schreiben
Wenn Du einen Node-Typ
am 12.06.2012 - 09:34 Uhr
Wenn Du einen Node-Typ definierst mit einem File-Field, dann generiert Drupal automatisch ein passendes Formular, das brauchst Du nicht selbst zu erstellen. Außerdem kannst Du beim File-Field, bei der Definition des Datentyps, angeben, in welchen Unterverzeichnis von sites/default/files (bzw. des bei Dateisystem festgelegten File-Verzeichnisses) Du diese Dateien abgelegt haben möchtest.
Wenn jetzt ein Benutzer das Recht hast einen Node von diesen Typ zu erzeugen, ist alles erledigt (Berechtigungen entsprechend setzen). Drupal sorgt für den Upload und trägt die Datei samt zugehörigem Pfad in der Datenbank ein. Das geht bei Drupal 6 und auch bei Drupal 7.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ok, ich hab einfach bei einem
am 12.06.2012 - 12:47 Uhr
Ok, ich hab einfach bei einem vorhanden Inhaltstyp ein file-filed hinzugefügt. Aber das ändert ja nichts an meinen Problem. Nicht die Benutzer meiner Seite sondern die Besucher meiner Seite sollen den Upload machen können.
http://openwater.bplaced.net/drupal/node/2
das ist der grobe Aufbau. Wenn man auf senden geht soll eine Datei auf den Webserver hochgeladen werden.
Dann gib dem Gast das Recht
am 12.06.2012 - 14:31 Uhr
Dann gib dem Gast das Recht einen Node von diesem Typ anzulegen und fertig.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hm seh`s mir bitte nach, ich
am 12.06.2012 - 20:07 Uhr
Hm seh`s mir bitte nach, ich bin wirklich totaler Anfänger in drupal.
Also der Inhaltstyp ist erstellt und der Benutzer Gast hat alle Berechtigungen für diesen Inhaltstyp (braucht er wahrscheinlich nicht aber sicher ist sicher :)). Wenn ich jetzt Inhalt erzeuge mit diesem Typ dann hab ich ja nur ein leere Seite. Du hast geschrieben drupal erzeugt ein eigenes Formular. Wo kann ich das denn finden und bearbeiten. Letztendlich muss dieses Formular ja auch auf irgendein script verweisen mit dem die Dateien weiterverarbeitet werden. Ich hoffe es ist nicht zuviel verlangt aber könntest du mir das bisschen genauer erklären oder noch besser kennst du ein Tutorial oder ähnliches in dem das beschrieben wird. Dann kann ich`s selber nachlesen ;)