1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

File Upload funktioniert nicht

  • Maxsani
  • 19. Dezember 2012 um 12:04
  • Unerledigt
  • Maxsani
    2
    Maxsani
    Mitglied
    Punkte
    30
    Beiträge
    4
    • 19. Dezember 2012 um 12:04
    • #1

    Hallo!

    Ich bin momentan am Seminararbeit schreiben für Datenbankbasierte Webserver und bin so weit auch schon fertig.
    Hab momentan nur ein Problem: der File Upload funktioniert nicht :-/

    Hier ist mal mein Code:

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <?php
        error_reporting(E_STRICT);
        ini_set("display_errors", 1);
    
        require('auth.php');
        require('sqlAdminConnect.php');
    
        $result = mysql_query('select abk, name from dienstgrad;');
        $options = "";
        while ($row = mysql_fetch_array($result))
        {
            $options .= '<option value="' .$row['abk'] .'">' .$row['name'] .'</option>\n';
        }
    
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {
            $vorname = $_POST['vorname'];
            $nachname = $_POST['nachname'];
            $dienstgrad = $_POST['dienstgrad'];
            $datei = 'default.jpg';
            $fehler = false;
            if (isset($_FILES['foto'])) {
                $size=getimagesize($_FILES['foto']['tmp_name']);
                if($size != 0) {
                    if($_FILES['foto']['size'] <  $_POST['MAX_FILE_SIZE']) {
                        $foto = $vorname .$nachname .'.jpg';
                         $ack = move_uploaded_file($_FILES['foto']['tmp_name'], '../Mannschaft-Dateien/'.$datei); 
                         if ($ack == false) {
                             echo 'Fehler bei Upload!';
                             $fehler = true;
                         }
                     } else {
                         echo 'File zu groß!';
                         $fehler = true;
                     }
                 } else {
                     echo 'Falsches Dateiformat!';
                     print_r($_FILES);
                     $fehler = true;
                 }
            }
            if (!$fehler) {
                $query = 'insert into mitglied (vorname, nachname, dienstgrad, foto) VALUES (\'' .$vorname .'\', \''.$nachname .'\', \'' .$dienstgrad .'\', \'' .$datei .'\');';
                $ack = mysql_query($query);
                if ($ack == false) {
                    echo mysql_error();
                }
            }
        }
    
    
    ?>
    
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    
    
    <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
    
    
    
    
    <title>Mannschafts admin</title>
    </head>
    
    
    <body>
        <h3>Mitglied erstellen</h3>
    
    
        <form name="mitglied" method="post" action="adminbereich.php?seite=mannschaft" enctype="multipart/form-data">
            <p>
            Vorname:
            <input type="text" name="vorname" />
            </p>
    
            <p>
            Nachname:
            <input type="text" name="nachname" />
            </p>
    
            <p>
            Dienstgrad:
            <?php
                echo '<select name="dienstgrad">\n';
                echo $options;
                echo '</select>';
            ?>
            </p>
    
            <p>
            Foto (.jpg maximal 100kb):
            <input type="file" name="foto" />
            </p>
    
            <input type="hidden" name="MAX_FILE_SIZE" value="102400" />
    
            <input type="submit" name="submit" value="Mitglied erstellen" />
        </form>
    </body>
    
    
    </html>
    Alles anzeigen

    Läuft auf nem Windows Server 2008 in ner virtuellen Maschine.
    Php ini ist konfiguriert (also File Uploads sind eingeschalten)

    Das hidden field habe ich nur gemacht falls es daran liegt aber daran liegt es scheinbar nicht :-/

    Folgende "Fehlermeldung" (also halt ergebnis des if) bekomme ich zurück:
    Falsches Dateiformat!Array ( [foto] => Array ( [name] => Bildname.jpg [type] => [tmp_name] => [error] => 6 [size] => 0 ) )

    Infos zur Homepage:
    Geht um eine Feuerwehrhomepage bei der, es einen Adminbereich gibt, wo eben Mitglieder auch erstellt werden können. Alternativ kann auch ein Foto hochgeladen werden und das wird dann in den richtigen Ordner verschoben und anschließend wird das neu erstellte Mitglied in eine Datenbank geschrieben.

    Ein Mitglied ohne Foto erstellen funktioniert.

    Ich hoffe mir kann jemand bei meinem Problem helfen :)

  • Paulchen
    1
    Paulchen
    Gast
    • 19. Dezember 2012 um 12:18
    • #2
    Zitat von Maxsani

    Falsches Dateiformat!Array ( [foto] => Array ( [name] => Bildname.jpg [type] => [tmp_name] => [error] => 6 [size] => 0 ) )


    http://php.net/manual/en/features.file-upload.errors.php:

    Zitat

    UPLOAD_ERR_NO_TMP_DIR
    Value: 6; Missing a temporary folder. Introduced in PHP 4.3.10 and PHP 5.0.3.

  • sutupud
    13
    sutupud
    Mitglied
    Reaktionen
    59
    Punkte
    1.659
    Beiträge
    320
    • 19. Dezember 2012 um 18:07
    • #3

    ich hoffe für dich dass nicht der kleine bobby tables in deiner mannschaft mitspielt...
    ansonsten solltest du dich mal über sql injection informieren und deine werte richtig escapen, oder gleich mysqli oder PDO mit parametrisierten queries verwenden.

    "All through my life I've had this strange unaccountable feeling that something was going on in the world, something big, even sinister, and no one would tell me what it was."
    "No," said the old man, "that's just perfectly normal paranoia. Everyone in the Universe has that."

    &#128513;&#128514;&#128515;&#128516;&#128517;&#128518;&#128519;&#128520;&#128521;&#128522;&#128523;&#128524;&#128525;&#128526;&#128527;&#128528;&#128530;&#128531;&#128532;&#128534;&#128536;&#128538;&#128540;&#128542;&#128544;&#128545;&#128546;&#128547;&#128549;&#128552;&#128553;&#128554;&#128555;&#128557;&#128560;&#128561;&#128562;&#128563;&#128565;&#128566;&#128567;

  • Maxsani
    2
    Maxsani
    Mitglied
    Punkte
    30
    Beiträge
    4
    • 19. Dezember 2012 um 18:55
    • #4

    Nein nein darüber bin ich mir schon im klaren :winking_face:
    will nur erst mal das alles läuft und dann werd i die seite so gut wie möglich absichern
    so wie sie momentan ist kann mans nicht lassen is mir klar :winking_face:

  • Maximilian Rupp 27. Dezember 2024 um 00:26

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung