$_POST bei Fileupload | Formular

Diskutiere mit über: $_POST bei Fileupload | Formular im Web-Programmierung Forum

  1. sevY

    sevY Thread Starter Gast

    Hi,

    ich schreibe meine Scripts gerade so, das sie kein register_globals = On benötigen.

    PHP:
    <?php

    require_once("config.php");

    $db_contact="X_media"

    if (
    $_POST[action] == upload)
        {
        
    chdir("../../media/img/logo");
        
    copy($X_media_navigation_new,$_FILES['X_media_navigation_new']['name']);
        
    chdir("../../downloads");
        
    copy($X_media_downloadlink_new,$_FILES['X_media_downloadlink_new']['name']);
        

        
    $logopfad="media/img/logo/".$_FILES['X_media_navigation_new']['name'];
        
    $downloadpfad="media/downloads/".$_FILES['X_media_downloadlink_new']['name'];

        
        
    $read mysql_query("select X_media_shorttext from $db_contact where ID_X_media = '1'",$handler);
        
    $a mysql_fetch_array($read);


        
    mysql_db_query($db_dbase,"insert into $db_contact (X_media_shorttext,X_media_navigation,X_media_downloadlink,X_media_downloadlink_name) VALUES ('$a[X_media_shorttext]','$logopfad','$downloadpfad','$_POST[X_media_downloadlink_name_new]')");
        }     
        

            
    ?>

    <form enctype=multipart/form-data action=X_media_new.php method=post>

        <input type=hidden name=action value=upload>

    <b>Partnerlogo:</b><br><p>

        <input type=file name=X_media_navigation_new><br>

    <b>Downloadobjekt:</b><p>

        <input type=file name=X_media_downloadlink_new><br>

        
    <b>Bezeichnung des Downloadlinks:</b><p>

        <input type=text name=X_media_downloadlink_name_new maxsize=60 size=55><br>

    <input type=submit value=hinzuf&uuml;gen>
    </form>



    Meine Frage nun:


    copy($X_media_downloadlink_new,$_FILES['X_media_downloadlink_new']['name']);

    Dieser Befehl kopiert die Datei aus dem entsprechenden Input Field mit ihren ursprünglichen Namen in den o.a. Ordner.

    Da ich register_globals = Off haben möchte, muß ich mit $_POST arbeiten.

    Das müsste dann doch so sein:


    copy($_POST[X_media_downloadlink_new],$_FILES['X_media_downloadlink_new']['name']);

    … ich bin nicht sicher. Denn irgendwie muß doch das $_FILES['X_media_downloadlink_new']['name'] auch in das $_POST[] mit hinein oder?

    Liebe Grüße

    Coffee
     
    Zuletzt von einem Moderator bearbeitet: 21.12.2003
  2. Delmar

    Delmar MacUser Mitglied

    Beiträge:
    803
    Zustimmungen:
    1
    Registriert seit:
    28.09.2002
    Zunächst einmal, ist die Syntax Deines "Copy-Befehls" nicht korrekt. Dieser
    setzt sich wie folgt zusammen:

    copy("$tempname", "$name");


    Die Datei wird via Formular auf den Server geladen und bekommt erstmal
    einen kryptischen Namen (z.B. TxwbWerqrS) zugewiesen. Die Variable
    $name enthält den Dateinamen, den die Datei auf dem Clientrechner hatte.

    Dein "Copy-Befehl" muss daher folgendermaßen lauten:

    PHP:
    copy("$_FILES['X_media_downloadlink_new']['tmp_name']","$_FILES['X_media_downloadlink_new']['name']);

    Du brauchst also kein $_POST[], da Du mit $_FILES[] auf die ensprechenden
    Variablen zugreifst.


    Gruß
    Delmar
     
  3. sevY

    sevY Thread Starter Gast

    Meine Syntax war also nicht sauber… weil funktioniert hat sie wunderbar.

    move_uploaded_files(); (oder so) soll ja besser sein… ich werde daher meine Scripts mal darauf umschreiben.

    Vielen Dank und liebe Grüße

    Coffee
     
  4. Delmar

    Delmar MacUser Mitglied

    Beiträge:
    803
    Zustimmungen:
    1
    Registriert seit:
    28.09.2002
    Könntest Du machen, jedoch kannst Du "copy()" ruhig weiter benutzen.
    Dann halt nur mit der richtigen Syntax. ;)

    Die Syntax kannst Du auf PHP.net mal nachschlagen, da gibt es doch die
    Doku zum Thema.


    Du scheinst ja richtig am rotieren zu sein bzgl. PHP und Co, was?! Machst
    Du das beruflich oder nebenbei - wenn man mal so ganz indiskret fragen
    darf.


    Gruß
    Delmar
     
  5. sevY

    sevY Thread Starter Gast

    Hi,

    ich mache das beruflich.

    Ich studiere an der FH Dortmund Grafikdesign und bin seit Februar freiberuflicher Flashworker. Mittlerweile erstelle ich Flashsites volldynamisch und bin grade dabei, ein Admintool zu erstellen, das ich dann jedem Kunden auf die von mir erstelle Webpräsenz zuschneiden kann, ohne etliche Stunden neu zu coden.

    Im Moment rotiere ich soviel, das ich vorher immer nur solche Scripts brauchte und mich nie wirklich um Adminforms etc. gekümmert habe:

    PHP:
    <?php
    require_once("_config.php");
    $db_contact="X_news_presse";
    $read = @mysql_query("select * from $db_contact where ID_X_news_presse='$pkx'",$handler);
    while(
    $a = @mysql_fetch_array($read))
    {
        
    $result .= '&X_news_navigation='.$a[X_news_navigation];
        
    $result .= '&X_news_content='.$a[X_news_content];
        
    $result .= '&X_news_weblink_name='.$a[X_news_weblink_name];
        
    $result .= '&X_news_weblink='.$a[X_news_weblink];
        
    $result .= '&X_news_downloadlink_name='.$a[X_news_downloadlink_name];
        
    $result .= '&X_news_downloadlink='.$a[x_news_downloadlink];
    }
    echo 
    $result;
    ?>
    Damit kann man dann ganz einfach die Variablen in Flash einlesen, nachdem mit sendAndLoad(); aus Flash heraus eine Variable geschickt wurde.
    Mehr als das brauchte ich nie ;)

    Und dann kommen auf einmal Dinge wie Fileuploads, Chmod, tausende von Checkboxen und Includes auf mich zu, Sicherheitsabfragen, Verschlüsselung :D Da freut man sich doch, da nun wieder Wissen in Unmengen aufgesogen werden kann.

    Liebe Grüße

    Yves
     
Die Seite wird geladen...
Ähnliche Themen - $_POST bei Fileupload Forum Datum
einfaches php. emailformular bei strato Web-Programmierung 08.08.2015
Nameserver ändern bei XLhost - wie/wo? Web-Programmierung 07.12.2014
Caching unterbinden bei statischen Websites Web-Programmierung 19.11.2012
Erfahrungen mit Platform-Umzug bei Strato??? Web-Programmierung 08.06.2012
Bilder per PHP bei Neuaufruf wechseln? Web-Programmierung 26.09.2011

Diese Seite empfehlen

Benutzerdefinierte Suche