Datei Upload und Daten speichern??

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

  • Datei Upload und Daten speichern??

    Hallo Folk's

    habe mal wieder ein kleines Problem.

    Ich habe mir ein Formular erstellt um meine Artikel zu bearbeiten.
    Jetzt kam mir der Gedanke,
    ich könnte in dem Selben Formular noch ein Dateiupload einbauen.
    Ist so was möglich
    Sinn der Sache ist, daß das Bild dann gleich im Image Ordner landet und
    in der Datenbank der Link zum Bild gespeichert wird.

    Cu Scotch

  • #2
    Formular mit Dateiupload

    Hier ein komplettes Formular mit Dateiupload


    <?
    // Your email to get the results.
    $dest = "empänger_email";

    // The sender address
    $sender = "absender_email";

    // Address for undelivered emails
    $undelivered = "absender_email";

    //Full path to your upload dir
    $up_full = "http://www.deine_seite.de/unterverzeichnis/upload/";

    //Relative path from this script (important)
    $up_dir = "./upload/";

    // Number of upload fields. Put 0 if you don't want any.
    $UploadNum = "1";

    //Host mail functions. Possible values are 0,1 or 2. See below:
    // 0 is for most hosts (default value).
    // 1 is for Online.Net (Online).
    // 2 is for Nexenservices.com (Nexen).

    $online_isp = "0";
    // --------------------------------------------------------------------------------- //

    if(isset($_REQUEST["submit"]))
    {

    // ------------------------ Fields Verification Process ------------------------- //
    $Nada = '';
    $From = $_REQUEST['From'];
    $Msg = $_REQUEST['Msg'];

    if(empty($From))
    {
    $Nada.="Bitte füllen Sie das Formular vollständig aus!";
    }

    $noway = "$Nada" ;

    if(empty($Nada) &&
    eregi("^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\\.[a-z]{2,4}$",$From))
    {
    $ok = 1;

    }
    elseif(!empty($Nada) &&
    eregi("^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\\.[a-z]{2,4}$",$From))
    {
    $ok = false;
    }
    else
    {
    $ml = "";
    $ok = false;
    }

    // ------------------------------------------------------------------------- //

    // ----------------------------- Upload Files ------------------------------ //
    $status = "";
    $new_name = "";
    $uploaded = "";
    $get_files = "";
    $all_names = "";

    for($i=0;$i<count($_FILES["fileup"]["tmp_name"]);$i++)
    {
    $name=$_FILES["fileup"]["name"][$i];
    $temp=$_FILES["fileup"]["tmp_name"][$i];
    $size=$_FILES["fileup"]["size"][$i];
    $type=$_FILES["fileup"]["type"][$i];
    if($size > 0)
    {
    global $up_dir, $all_names;
    $new_name = time() . "-" . $name;
    $new_name = str_replace(" ","_",$new_name);
    @move_uploaded_file($temp, $up_dir . $new_name);
    $all_names.= "$new_name\n";
    }
    }
    // ------------------------------------------------------------------------- //

    // ----------------------------- Upload Messages --------------------------- //
    if(empty($all_names))
    {
    $status = "Keine Datei hochgeladen.";
    $uploaded = "Keine Datei hochgeladen.";
    }
    else
    {
    $status = "Datei erfolgreich hochgeladen.";
    $uploaded = "Es wurden !\n Dateie/n hochgeladen:";
    $get_files = "\nGet the file(s): $up_full";
    }
    //--------------------------------------------------------------------------- //

    // ----------------------------- Mail Builder ------------------------------ //
    if($ok=="1")
    {
    $referer = $_SERVER["HTTP_REFERER"];
    $sujet = "Kontaktformular";
    $body ="Absender: $referer\n";
    $body.="\n***** Nachricht *****\n\n";

    if(count($_POST))
    {
    while(list($key, $val) = each($_POST))
    {
    $body.="$key : $val\n";

    }
    }

    $body.="\n\n";
    $body.="Upload: $uploaded\n";
    $body.="$all_names\n";
    $body.="$get_files\n";
    $body.="*************************\n";

    if($online_isp == "1")
    {
    if(!email("feedback",$dest,$sujet,$body))
    {
    print "An error occured during mail delivery <br>";
    }
    }
    elseif ($online_isp == "2")
    {
    include "mail.inc";
    if(!email($dest,$sujet,$body))
    {
    print "An error occured during mail delivery <br>";
    }
    }
    else{
    $headers = $sender;
    if(!mail($dest,$sujet,$body, $headers, "-f $undelivered"))
    {
    print "An error occured during mail delivery <br>";
    }
    }
    // ------------------------------------------------------------------------- //

    // ---------------------------- Success Message ---------------------------- //
    ?>
    <center>
    Vielen Dank!<br><br>Ihre Kontaktaufnahme wurde an uns weitergeleitet.

    <?
    }
    // ------------------------------------------------------------------------- //
    else
    {
    // ----------------------------- Error Message ----------------------------- //
    ?>
    <center><table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#ffffff"><tr>
    <td width="100%">
    <table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#ffffff"><tr>
    <td colspan="2" bgcolor="#ffffff"><div align="center"><b>
    <?
    echo $noway;
    echo $ml;
    ?>
    </b>
    <a href='Javascript:history.go(-1)'>zurück</a>

    </tr></table>
    </td></tr></table></center>
    <?
    // ------------------------------------------------------------------------- //
    }
    }
    else
    {
    $num = 0;
    $html = '';
    while($num < $UploadNum)
    {
    $num++;
    $html.= "
    <table bgcolor=\"#FFFFFF\">

    <TR><TD>Die Bewerbung hier anhängen</TD><TD><INPUT NAME='fileup[]' TYPE='file'></TD>";
    }
    ?>



    <form action="<?echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" bgcolor="#FFFFFF">

    <table bgcolor="#FFFFFF">

    <tr>
    <td height="3" width="180"><font size="3">Vorname und Name :</font></td><td height="3" width="249"><input type="text" size="20" name="Name" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td>
    </tr>
    <tr><td height="3" width="180"><font size="3">Strasse und Nummer:</font></td><td height="3" width="249"><input type="text" size="20" name="Strasse" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td></tr>
    <tr>
    <td height="3" width="180"><font size="3">PLZ und Ort:</font></td><td height="4" width="249"><input type="text" size="20" name="Ort" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td>
    </tr>
    <tr>
    <td height="3" width="180"><font size="3">E-Mailadresse :</font></td><td height="3" width="249"><input type="text" size="20" maxlength="255" name="From" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td>
    </tr>
    <tr>
    <td height="3" width="180"><font size="3">Altersangabe:</font></td><td height="3" width="249"><input type="text" size="20" maxlength="255" name="alter" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td>
    </tr>
    <tr>
    <td height="3" width="180"><font size="3">Derzeitige Tätigkeit:</font></td><td height="3" width="249"><input type="text" size="20" maxlength="255" name="job" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td>
    </tr>
    <tr>
    <td height="3" width="180"><font size="3">Telefon / Handy:</font></td><td height="3" width="200"><input type="text" size="20" maxlength="255" name="telefon" style="background-color: #CCCCCC;font: verdana; color: #000000; border: 0px;" value=""></td>
    </tr>

    <table width="100%" border="0" align="center" bgcolor="#FFFFFF"><tr align="center">
    <?php echo $html; ?></tr></table>

    <center>
    <input type="submit" name="submit" value=" Daten jetzt absenden " style="background-color:#CCCCCC">
    </center>

    </p>
    </form>


    <? } ?>

    Kommentar


    • #3
      1. Suche,
      2. *verschieb* nach Gesuche.

      Kommentar


      • #4
        Ja ja war halt nicht so sicher wohin ich es posten soll, sorry TobiaZ
        War ja auch nicht auf der suche nachj ein Script sondern wollte nur ein einfaches ja oder nein bzw. ein kleinen Tipp aber egal .

        Danke @ joern
        werde dein Script gleich mal genauer ansehen...

        Cu Scotch

        Kommentar


        • #5
          Also ich habe es hinbekommen und da ich es selber nicht mag wenn
          Tehmen einfach so ohne was enden, hier noch mal alles zusammen.

          Problem: in mein Formular sind zur Dateneingabe Felder, und auch ein
          Dateiupload Feld.
          PHP-Code:
          <form enctype="multipart/form-data" action="upload.php" method="post">
          <
          div align="center">
          <
          p>Bitte wählen Sie eine Datei!</p>

          texteingabe:<input type="text" name="test"><br>
          File:<input type="file" name="upfile">
           
          <
          br>
          <
          input type="submit" value="Upload!">

          </
          form
          in der Upload.php Datei wollte ich zum testen den Wert aus dem
          [COLOR=blue]<input type="text" name="test"> [/COLOR]
          mit ausgeben
          mein Fehler war das ich die Variabel $test abgefragt habe.
          Dabei mußte ich sie (trotz Global=on) mit $_POST['test'] abfragen.
          Hier das Script.
          PHP-Code:
          <?php
            $filepath 
          $DOCUMENT_ROOT."/files/upload/";  //Die Ordner müßen vorhanden sein
            
          echo $_FILES['upfile']['name']."<br>";
            echo 
          $_POST['test']."<br>";
          if (
          move_uploaded_file($_FILES['upfile']['tmp_name'],
              
          $filepath.$_FILES['upfile']['name'] )) {
              echo 
          "datei gespeichert";
              }else{ 
              echo 
          "Upload fehlgeschlagen";
              }
          ?>
          So das war's
          Ps für alle Anfänger (wie ich )

          wenn ihr mit
          [COLOR=blue]$DOCUMENT_ROOT[/COLOR]
          nicht anfangen könnt, macht euch ein kleines Script.
          PHP-Code:
          <?php
            
          echo $DOCUMENT_ROOT;
            
          ?>
          nun seht ihr wo ihr noch die Verzeichnise
          /files/upload/
          anlegen müßt.

          Kommentar


          • #6
            wunderbar! Dann verschieb ich es gerne zurück

            Statt $DOCUMENT_ROOT solltest du noch besser $_SERVER['DOCUMENT_ROOT'] benutzen. das ist so wie bei $_POST['var'] statt $var.

            PS: evtl ist das Forum Brainstorming ganz brauchbar...

            Kommentar

            Lädt...
            X