Marc Reichelt: + MySQL: Datei (Upload) in Datenbank speichern?

Hi an alle!

Ist es ohne Probleme (und W3C-konform) möglich, per Formular mehrere Dateien an ein PHP-Skript zu senden, das dann die Daten in die Felder einer MySQL-Datenbank einspeist?
Was muss ich dabei beachten, welche Fehler gilt es zu umgehen?

cu

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!
SELFCode: ss:| zu:) ls:< fo:# de:> va:} ch:? sh:) n4:( rl:? br:^ js:( ie:% fl:( mo:)
http://emmanuel.dammerer.at/selfcode.html
  1. Hello,

    Ist es ohne Probleme (und W3C-konform) möglich, per Formular mehrere Dateien an ein PHP-Skript zu senden, das dann die Daten in die Felder einer MySQL-Datenbank einspeist?
    Was muss ich dabei beachten, welche Fehler gilt es zu umgehen?

    Schau Die meine kleine Experimental-Lösung an unter

    http://selfhtml.bitworks.de --> Multiupload

    Funktioniert nur bei NN7.0 nicht so toll, weil der nicht auf onChange im File-Input reagiert.

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
    1. Hi!

      Auch leider nicht das was ich suche.
      Ich habe fünf (und maximal fünf) Uploadfelder, es können also maximal 5 Dateien hochgeladen werden.
      Es geht nur darum:
      Entweder man speichert die Dateien als normale Dateien (oh wie toll ;-) ab, oder man speichert sie in einer MySQL-Datenbank ab.
      Geht das mit der MySQL-Datenbank, und wenn ja wie?
      Wie ich normale Textdaten in MySQL in Tabellen speichere weiß ich, also braucht ihr nicht ganz von vorne anfangen :-D

      cu

      Marc Reichelt || http://www.marcreichelt.de/

      --
      Linux is like a wigwam - no windows, no gates and an Apache inside!
      SELFCode: ss:| zu:) ls:< fo:# de:> va:} ch:? sh:) n4:( rl:? br:^ js:( ie:% fl:( mo:)
      http://emmanuel.dammerer.at/selfcode.html
      1. Hello,

        Entweder man speichert die Dateien als normale Dateien (oh wie toll ;-) ab, oder man speichert sie in einer MySQL-Datenbank ab.
        Geht das mit der MySQL-Datenbank, und wenn ja wie?
        Wie ich normale Textdaten in MySQL in Tabellen speichere weiß ich, also braucht ihr nicht ganz von vorne anfangen :-D

        Klar kann man die uploaded Files in der SQL-Datenbank speichern. Aber ob das sinnvoll ist, fragt sich. Man sollte aber keinesfalss vergessen, die Daten zu escapen. Sonst kracht es ggf. gewaltig.

        Ich würde sie aber auf keinen Fall in einer gemeinsamen Tabelle mit den übrigen Daten speichern, sondern auf jeden fall in eienm Extra File, über dass man auch nie eine Listenabfrage machen lässt. Dann steht nämlich die DBEngine und swapt nur noch vor sich hin.

        Harzliche Grüße aus http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
        1. Hi!

          Das ist schon wahr, denn insgesamt sind bis zu 100 MB als Bilddaten in der MySQL-Datenbank abgespeichert. Das wär dann glaub ich doch net so praktisch...
          Dann bastel ich mir ne eigene Funktion, die das ganze in einen temporären Ordner plaziert - ist auch die beste Lösung denke ich.

          Vielen Dank!

          Marc Reichelt || http://www.marcreichelt.de/

          --
          Linux is like a wigwam - no windows, no gates and an Apache inside!
          SELFCode: ss:| zu:) ls:< fo:# de:> va:} ch:? sh:) n4:( rl:? br:^ js:( ie:% fl:( mo:)
          http://emmanuel.dammerer.at/selfcode.html
  2. Ist es ohne Probleme (und W3C-konform) möglich, per Formular mehrere Dateien an ein PHP-Skript zu senden, das dann die Daten in die Felder einer MySQL-Datenbank einspeist?

    Salut

    Ja, es ist möglich.
    Du brauchst also eine HTML-Datei mit den gewünschten Formularfeldern. Selfhtml hat ein extra Kapitel dazu. Beim abschicken des Formulares sendest du dieses an eine PHP-Datei. Diese Datei erfasst die Daten des Formularfeldes, kontrolliert, ob die Daten nicht "böse" sind und wenn wirklich ein Name drin steht, wird der Name in der MySQL Datenbank gespeichert.

    HTML:
    <form...
      <input type="text" name="vornamen"...
    </form>

    PHP:
    $vornamen = falls_böse_gut_machen($_POST['vornamen']);

    ->MySQL connecten
    ->Mit Datenbank verbinden

    ->$vornamen in die Tabelle "meine_tabelle" in der Spalte "vornamen" speichern.

    Hilft dir das weiter?

    Gruss
    Schorsch

    1. Hi!

      Die Namen an sich sind mir egal, was ich möchte sind die DATEN (also Bilddaten) in der MySQL-Datenbank speichern.

      cu

      Marc Reichelt || http://www.marcreichelt.de/

      --
      Linux is like a wigwam - no windows, no gates and an Apache inside!
      SELFCode: ss:| zu:) ls:< fo:# de:> va:} ch:? sh:) n4:( rl:? br:^ js:( ie:% fl:( mo:)
      http://emmanuel.dammerer.at/selfcode.html
      1. Die Namen an sich sind mir egal, was ich möchte sind die DATEN (also Bilddaten) in der MySQL-Datenbank speichern.

        Salut
        Aha, Bilder. Na, dann würde ich persönlich die Bilder selber nicht in der DB speichern, sondern nur den Pfad+Bildname.
        Die Bilder würde ich einfach als Dateien oben auf dem Server speichern.

        Gruss
        Schorsch