+ Antworten
Ergebnis 1 bis 1 von 1

Thema: Uploadscript

  1. #1
    Neu an Board
    Registriert seit
    31.03.2015
    Beiträge
    19
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard Uploadscript

    Halli Hallo,
    ich möchte mein erstes Modul schreiben und komme nun bereits bei dem 2. Lösungsansatz nicht weiter.

    Ziel des Scriptes ist es eine Datei erstmal hochzuladen und später auch zuteilen und in eine Datenbank zu schreiben.

    Ich habe schon beim hochladen Probleme. Erster Lösungsansatz war ein (altes) php Formular. Nun habe ich ein html5 Script welches ersteinmal moderner aussieht gefunden.
    Die Daten sollen in den unterliegenden Modulordner geladen werden mit namen "Uploads". Der Ordner hat bereits die 777 Berechtigung. Die Datei wird als hochgeladen angezeigt ohne Error aber wurde nicht hochgeladen.

    So hier der Code:
    default.php
    PHP-Code:
    <?php 

    als Ergänzung fällt mir ein
    dass die default.php in einem unterordner liegt und die upload.php in dem direkten modulordner. Die Dateien sollen in einen unterliegenden Ordner uploads geladen werden.
    // No direct access
    defined('_JEXEC') or die; ?>

    <!DOCTYPE html>

    **********

    function _(el){
        return document.getElementById(el);
    }
    function uploadFile(){
        var file = _("file1").files[0];
        // alert(file.name+" | "+file.size+" | "+file.type);
        var formdata = new FormData();
        formdata.append("file1", file);
        var ajax = new XMLHttpRequest();
        ajax.upload.addEventListener("progress", progressHandler, false);
        ajax.addEventListener("load", completeHandler, false);
        ajax.addEventListener("error", errorHandler, false);
        ajax.addEventListener("abort", abortHandler, false);
        ajax.open("POST", "upload.php");
        ajax.send(formdata);
    }
    function progressHandler(event){
        _("loaded_n_total").innerHTML = "Uploaded "+event.loaded+" bytes of "+event.total;
        var percent = (event.loaded / event.total) * 100;
        _("progressBar").value = Math.round(percent);
        _("status").innerHTML = Math.round(percent)+"% uploaded... please wait";
    }
    function completeHandler(event){
        _("status").innerHTML = event.target.responseText;
        _("progressBar").value = 0;
    }
    function errorHandler(event){
        _("status").innerHTML = "Upload Failed";
    }
    function abortHandler(event){
        _("status").innerHTML = "Upload Aborted";
    }
    </script>


    <form id="upload_form" enctype="multipart/form-data" method="post">
      <input type="file" name="file1" id="file1"><br>
      <input type="button" value="Upload File" onclick="uploadFile()">
      <progress id="progressBar" value="0" max="100" style="width:300px;"></progress>
      <h3 id="status"></h3>
      <p id="loaded_n_total"></p>
    </form>
    und die
    upload.php
    PHP-Code:
    <?php
    $fileName 
    $_FILES["file1"]["name"]; // The file name
    $fileTmpLoc $_FILES["file1"]["tmp_name"]; // File in the PHP tmp folder
    $fileType $_FILES["file1"]["type"]; // The type of file it is
    $fileSize $_FILES["file1"]["size"]; // File size in bytes
    $fileErrorMsg $_FILES["file1"]["error"]; // 0 for false... and 1 for true
    if (!$fileTmpLoc) { // if file not chosen
        
    echo "ERROR: Please browse for a file before clicking the upload button.";
        exit();
    }
    if(
    move_uploaded_file($fileTmpLoc"uploads/$fileName")){
        echo 
    "$fileName upload is complete";
    } else {
        echo 
    "move_uploaded_file function failed";
    }

    ?>
    Geändert von Darkbasti (27.06.2015 um 13:21 Uhr)

+ Antworten

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein