Rinma Geschrieben 14. September 2011 Geschrieben 14. September 2011 So hab noch eine Frage, 1. Wie bekomme ich mit PHP und mysqli eine Datei in eine MySql Datenbank geladen. 2. Wie krieg ich es hin das mir der Dateiname ausgegeben wird. Möchte Den Namen dann auf die Datei Verlinken. Habe mich auch schon in google, Foren und php.net erkundigt und nichts gefunden. Und die Datei MUSS in die Datenbank. Danke schonmal für gut antworten. Zitieren
Jejerod Geschrieben 14. September 2011 Geschrieben 14. September 2011 1. Wie bekomme ich mit PHP und mysqli eine Datei in eine MySql Datenbank geladen. Gar nicht. Du bekommst lediglich den Inhalt in eine Datenbank, z.B. als BLOB. Metadaten wie den Namen musst du, wenn benötigt, zusätzlich sichern. 2. Wie krieg ich es hin das mir der Dateiname ausgegeben wird. Möchte Den Namen dann auf die Datei Verlinken. Indem du da nachschaust, wo du ihn abgelegt hast. Zitieren
Rinma Geschrieben 14. September 2011 Autor Geschrieben 14. September 2011 Hmm okay... Ich hab jetzt die Datei als Blob in die Datenbank bekommen und wenn ich mir die ausgeben lasse wird der Inhalt der Datei geschrieben wieso ? Zitieren
diditwithook Geschrieben 14. September 2011 Geschrieben 14. September 2011 Binary Large Object du musst den blob mit seinen metadaten, die du seperat in der db abspeicherst auf irgendeine art verknüpfen, dann kannst du auch seine metadaten nach bedarf auslesen Zitieren
Jejerod Geschrieben 14. September 2011 Geschrieben 14. September 2011 Hmm okay... Ich hab jetzt die Datei als Blob in die Datenbank bekommen und wenn ich mir die ausgeben lasse wird der Inhalt der Datei geschrieben wieso ? Um, was hast du denn anderes erwartet? Wenn du den BLOB ausgibst, wird er selbstverständlich ... err... ausgegeben. Standard Content-Type des Webservers ist meist text/html oder text/plain, daher landet dein BLOB auf dem Bildschirm des Browsers. Möchtest du allerdings einen Download provozieren musst du passende HTTP Header schicken, eben halt Content-Type und Content-Disposition. Ein Content-Type von zB application/octet-stream sorgt bei den meisten Browsern dafür das ein Download angestoßen wird. Die Content-Disposition enthält den vorgeschlagenen Dateinamen. $cType = 'application/pdf'; $cName = 'sample.pdf'; header('Content-Type: '.$cType); header('Content-Disposition: attachment; filename="'.$cName.'"'); // ...Ausgabe des Binaerstroms [/PHP] Zitieren
raiserle Geschrieben 14. September 2011 Geschrieben 14. September 2011 (bearbeitet) Es kommt mir so vor, als ob er nicht willig ist - Dokus zu lesen. Er mag hier alles vorgekaut bekommen. Einfach mal hier suchen. Gleich der erste Eintrag ist alles was man brauch! vG Bearbeitet 14. September 2011 von raiserle Rechtschreibfehler ;) Zitieren
Rinma Geschrieben 16. September 2011 Autor Geschrieben 16. September 2011 (bearbeitet) geile seite xD aber unnötig, weil ich möchte nicht downloaden sondern reinschreiben. Wenn du denskt ich poste hier dinge BEVOR ich mindestens 1 Stunde google suche vergebens gemacht habe liegst du falsch. Außerdem wurde mein Problem gelöst, hab das mit den extra Metdaten hinbekommen. Danke für alle SINVOLLEN antworten. Bearbeitet 16. September 2011 von Rinma Zitieren
raiserle Geschrieben 18. September 2011 Geschrieben 18. September 2011 Wenn du nicht mal deine eigenen Posts kennst. Lass es doch einfach. http://www.fachinformatiker.de/skript-webserverprogrammierung/149248-dateien-datenbank-legen.html#post1338122 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.