Ankündigung

Einklappen
Keine Ankündigung bisher.

Datei hochladen mit PHP

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Datei hochladen mit PHP

    Hallo,
    ich gebe in meinem Formular die Möglichkeit ein Bild in die Datenbank zu speichern. Irgendetwas stimmt aber nicht in den Codes. Kann mir jemand helfen ?
    Formular.php
    Code:
    <tr><td>Hier können Sie Ihr Bild hochladen.
    
    Es wird in der Anzeige mit einer Breite von 5cm angezeigt. Gültige Formate sind gif- und jpg-Dateien.
    
    Datei: <input name="upfile" type="file" size="35"></td>
    </tr>
    Speichern.php
    Code:
    $upfile = ($_POST["upfile"]);
    .
    .
    .
    if ($upfile_size>0 && $upfile_ext != "gif" OR "jpg")
    {
    echo "
    
    Falscher Dateiformat gewählt";
    }
    Außerdem habe ich als Variablenformat in der SQL-Datenbank VARCHAR(50) gewählt. Ist das okay?

    Danke

  • #2
    ich denke wenn man ein file hochläd, kommt es als $_FILE["upfile"] an.. glaube ich ^^

    Kommentar


    • #3
      Eigentlich macht man so ein Script mit php.ini und damit kenn ich mich net aus....

      Kommentar


      • #4
        Kann mir dabei jemand helfen.
        Die Anwendung soll außerdem mit anderen Inträen erfolgen, d. h. nicht als einzelnes da stehen.
        Danke

        Kommentar


        • #5
          erstmal:
          16.3. Ist es sinnvoll, Bilder in einer Datenbank abzulegen?
          http://www.php-faq.de/q/q-db-blob.html

          speicher die bilder in nem pfad und leg nur den link in der db ab.

          n script hierfür könnte z.B. so aussehen:
          PHP-Code:
                          // Skript zum Upload und zur Überprüfung von Bilddateien
          $kdnr $_SESSION[kdnr]; // bei mir bestandteil des späteren dateinamens
          $datum date(d.m.Y);
          $bildurl "../kundenbilder/"// ablageordner

          $tempname $_FILES['file']['tmp_name']; 
          $name $_FILES['file']['name']; 
          $type $_FILES['file']['type']; 
          $size $_FILES['file']['size'];
          $count1 "1";

          $error false;

                          
          //Prüfung des Dateiformates - da testscript gehts nur mit gif

          if ($name != "") {

          if (
          $type == "image/gif" )   { $extension ".gif"; } else {
          $error true;
          $error1 "
          Ungültiges Format für Bild 1! Sie können nur GIF Dateien hochladen."
          ;}


                          
          // Prüfung der Dateigrösse.

          if($size "50000") { 
          $err1 "
          Fehler! Bild 1 ist grösser als 50 kb."

          }

                          
          // Zusammensetzung des neuen Dateinamens!
          if ($name != "") {
          $filename  $kdnr $datum  $count1 $extension; }

                          
          // Verarbeitung

          if(!$error) { 
              
              @
          copy($tempname$bildurl $filename); 
                  
                                  
          // Prüfung ob schon ein Satz Bilder des Kunden vorhanden ist.
                                  // Wenn ja, nur updaten, wenn nein, neuen datensatz anlegen.
                                  
                  
          $sql "SELECT sid FROM bilder WHERE sid='$id'"
                  
          $check = @mysql_query($sql);
                  
          $line = @mysql_fetch_array($check);
                  
                  if (
          $line['sid'] == $id) {
                  
                  
          $bild1 "UPDATE bilder SET bild1='$filename' WHERE sid='$id'";
                  if (
          $filename  != "") { mysql_query($bild1); }
                  echo 
          "Datensatz erfolgreich überschrieben.";
              
                  } else {
                  
                  
          $query "INSERT INTO bilder SET bild1='$filename', sid='$id'";
                  
          mysql_query($query) or die (error_report('1'falsefalse__FILE____LINE__));
                  echo 
          "Datensatz erfolgreich angelegt."; } 
          schaus dir mal genau an, dann werden alle fragen gelüftet .

          Kommentar


          • #6
            Schau dir doch mal das Quickforms Paket von pear an. Musst zwar am Anfang ein bisschen Arbeit investieren, danach kannst du aber ganz beinfach Formulare und Formularlemente erzeugen. Dort ist auch eine Funktion für das Hochladen von Bildern. Und die Validierung wird dir auch abgenommen. Musst nur die vorgefertigten Regeln angeben. Wichtig ist jedoch, dass du auch das Paket HTML Common installierst.
            Das Ganze lohnt sich aber nur, wenn du viel mit Formularen arbeitest. Für eine einmalige Anwendung ists übertrieben.

            http://pear.php.net/packages.php?catpid=10&catname=HTML

            Kommentar

            Lädt...
            X