Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] upload script Problem

Einklappen

Neue Werbung 2019

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

  • [Erledigt] upload script Problem

    Hi Habe da so ein kleines Upload Script gebastelt, nur leider funkt. es nicht so wie ich will.
    Habe eine HTML Seite erstellt mit CSS und HTML halt ^^
    Nur wenn ich auf upload drücke passiert nichts.

    Hier der code:
    PHP-Code:
    <?php


    $max_byte_size 
    10000;
    $allowed_types "(sft)";

    if(
    $_POST["submit"] == "Upload") {

    if(
    is_uploaded_file($_FILES["file"]["tmp_name"])) {

    ($ = 
    Am Ende des Dateinamens) (/GroßKleinschreibung nicht berücksichtigen)
    if(
    preg_match("/\." $allowed_types "$/i"$_FILES["file"]["name"])) {

    if(
    $_FILES["file"]["size"] <= $max_byte_size) {

    if(
    copy($_FILES["file"]["tmp_name"], $_FILES["file"]["name"])) {

    echo 
    "Datei erfolgreich hochgeladen!<br>";
    echo 
    "Name: " $_FILES["file"]["name"] . "<br>";
    echo 
    "Größe: " $_FILES["file"]["size"] . " Byte<br>";
    echo 
    "Link: <a href=\"" $_FILES["file"]["name"] . "\">" $_FILES["file"]["name"] . "</a>";

    }
    else {

    echo 
    "Datei konnte nicht hochgeladen werden.";

    }

    }
    else {

    echo 
    "Die Datei darf nur eine Größe von " $max_byte_size " Byte besitzen.";

    }

    }
    else {

    echo 
    "Die Datei besitzt keine ungültige Endung.";

    }

    }
    else {

    echo 
    "Keine Datei zum Hochladen angegeben.";

    }

    }
    else {

    echo 
    "Bitte benutze das Upload Formular.";

    }

    ?>
    Hoffe mir kann jmd. helfen

    PS:
    Der Uploadet das zwar aber der zeigt dann nicht die Linkausgabe und wenn ich nur
    HTML-Code:
    <form action="upload.php" method="post" enctype="multipart/form-data" name="upload">
    <input type="file" name="file"><input type="submit" name="submit" value="Upload">
    </form>
    als HTML erstelle und es dann ausführe dann geht das alles.

  • #2
    Zitat von Humpy Beitrag anzeigen
    PHP-Code:
    ($ = Am Ende des Dateinamens) (/GroßKleinschreibung nicht berücksichtigen
    Das gehört da nicht hin.
    Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von verwendet werden

    Kommentar


    • #3
      Danke erstmal aber trotzdem wenn ich uppe kommt die linkausgabe net, liegt es an CSS??

      Kommentar


      • #4
        Code:
        <?php
        error_reporting(-1);
        ini_set('display_errors', 1);
        Ansonsten mach dich ans Debuggen.
        [URL]http://hallophp.de[/URL]

        Kommentar


        • #5
          Dann stell fest, an welcher Stelle das Script aussteigt und warum.
          error_reporting einschalten und auf Maximum stellen.

          Im übrigen solltest du anstatt copy() die Funktion move_uploaded_file() benutzen
          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

          Kommentar


          • #6
            Ich denke mal es liegt nicht am so direkt am script denn wenn ich nur das
            mache dann geht das also auch mit linkausgabe aber wenn ich meinen eigenen style benutze geht dies nicht der uppt das aber zeigt nichts weitere an.
            Muss ich dann was an den HTML Code ändern oder iwi ne neue HTML Seite erstellen??

            Kommentar


            • #7
              Ja und woher sollen wir wissen ob's am CSS-Style liegt, wenn keine Zeile CSS Code gepostet wird?

              *kopfschüttel*
              Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

              Kommentar


              • #8
                HTML Code:
                Code:
                <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
                
                <html>
                <head>
                <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
                <title>Bietemaker by -xpspx-</title>
                <meta name="keywords" content="" />
                <meta name="description" content="" />
                <link rel="stylesheet" type="text/css" href="default.css" />
                </head>
                <body>
                	<div id="header-wrapper">
                		<div>Humpy</div>
                	</div>
                	<div id="outer">
                		<div id="headerpic">
                			<div id="logo"></div>
                			<div id="logo_right"></div>
                		</div>
                		<div id="content">
                			<div id="normalcontent">
                			<form action="" method="">
                				<h5>SFT-Files hochladen</h5>
                				<div id="point">
                				  <div class="input"><form action="upload.php" method="post" enctype="multipart/form-data" name="upload">
                <input type="file" name="file"><input type="submit" name="submit" value="Upload">
                </form> 
                                 
                				  </div>
                				</div>
                			  <h5>Info</h5>
                              <h4><IMG SRC="http://www.php.de/images/pfeil.png"> Datei auswählen und auf Upload klicken </h4>
                             <h4> <IMG SRC="http://www.php.de/images/pfeil.png"><font color="#FF0000"> Maximale</font> Uploadgröße 1 MB
                			  </form>
                			</div>
                </div>
                	</div><div id="outerfooter">
                	<div id="outerfooterleft"></div>
                	<div id="outerfootercenter"></div>
                	<div id="outerfooterright"></div>
                	</div>
                </body>
                </html>
                CSS:
                Code:
                *
                {
                padding: 0em;
                margin: 0em;
                }
                
                body
                {
                background: #000000 url('images/bg1.png');
                padding: 35px 0px 35px 0px;
                margin:0 auto; padding:0;
                text-align:center;
                }
                
                h5 {
                background: url('images/hbg.png') repeat-x;
                line-height:25px;
                padding-left: 10px;
                height:25px;
                text-align:left;
                margin-top:10px;
                }
                
                .textbox {
                border: 1px solid #a4a4a4;
                background: #ffffff url('images/inputbg.png') repeat-x;
                padding:2px;
                }
                
                #buttons {
                  margin-top: 10px;
                }
                
                h4 {
                line-height:25px;
                padding-left: 10px;
                height:25px;
                text-align:left;
                margin-top:10px;
                }
                
                body,input
                {
                font-size: 10pt;
                font-family: verdana, arial, serif;
                color: #333333;
                }
                
                p
                {
                line-height: 1.5em;
                margin-bottom: 1.0em;
                text-align: justify;
                }
                
                .contentarea
                {
                padding-top: 1.3em;
                }
                
                img
                {
                border: solid 1px #6F5230;
                }
                
                img.left
                {
                position: relative;
                float: left;
                margin: 0em 1.8em 1.4em 0em;
                }
                
                img.right
                {
                position: relative;
                float: right;
                margin: 0em 0em 1.8em 1.8em;
                }
                
                .divider2
                {
                position: relative;
                height: 1px;
                border-bottom: solid 1px #eaeaea;
                margin: 2.0em 0em 2.0em 0em;
                }
                
                #upbg
                {
                position: absolute;
                top: 0px;
                left: 0px;
                width: 100%;
                height: 275px;
                background: #fff url('images/bg2.png') repeat-x;
                z-index: 1;
                }
                
                #outer
                {
                z-index: 2;
                position: relative;
                width: 990px;
                margin:0 auto;
                background-color: #fff;
                
                /* margin: 0 auto; <- Original */
                }
                
                /* Header */
                
                #header-wrapper {
                
                background-image:url(images/headerw.png);
                text-align:center;
                margin:0 auto;
                padding:0;
                color: #abc6db;
                
                }
                
                #header-wrapper div {
                 margin: 0px auto;
                 width:990px;
                 line-height:34px;
                 text-align:left;
                
                 color: #abc6db;
                }
                
                #header-wrapper a{
                color: #abc6db;
                }
                
                #headerpic
                {
                
                height: 109px;
                background: #fff url('images/header_bg.png') repeat-x top left;
                margin:0 auto;
                overflow:hidden;
                margin-top: -2px;
                }
                
                #logo
                {
                float:left;
                position: relative;
                height: 109px;
                width:775px;
                background: url('images/logo.png') no-repeat top left;
                }
                
                #logo_right
                {
                float:right;
                position: relative;
                height: 109px;
                width:20px;
                background: url('images/logo_right.png') no-repeat top right;
                }
                
                
                #content
                {
                padding: 0em 2.0em 0em 2.0em;
                }
                
                #primarycontainer
                {
                float: left;
                margin-right: -18.0em;
                width: 100%;
                }
                
                #primarycontent
                {
                margin: 1.5em 22.0em 0em 0em;
                }
                
                #secondarycontent
                {
                margin-top: 1.5em;
                float: right;
                width: 18.0em;
                }
                
                #footer
                {
                position: relative;
                height: 2.0em;
                clear: both;
                padding-top: 5.0em;
                background: #fff url('images/footer.gif') repeat-x 0em 2.5em;
                font-size: 0.8em;
                }
                
                #footer .left
                {
                	position: absolute;
                	left: 10px;
                	bottom: 19px;
                	width: 376px;
                	height: 15px;
                }
                
                #footer .right
                {
                position: absolute;
                right: 2.0em;
                bottom: 1.2em;
                }
                
                #point {
                padding-top:10px;
                
                }
                
                .label {
                  width:30%;
                  float:left;
                  text-align:right;
                  margin-right:50px;
                  
                }                  
                
                .input {
                  text-align:left;
                }
                
                #outerfooter {
                  width:990px;
                  margin:0 auto;
                }
                
                #outerfooterleft {
                  height:6px;
                  width:5px;
                  float:left;
                  background: url('images/footerleft.png');
                }
                
                #outerfootercenter {
                  height:6px;
                  float:left;
                  background-color: #fff;
                  width:980px;
                }
                
                #outerfooterright {
                  height:6px;
                  width:5px;
                  float:right;
                  background: url('images/footerright.png');
                }

                Kommentar


                • #9
                  Du hast in deinem HTML zwei Formulare verschachtelt. Das ist illegal. Bitte prüfe immer, ob du auch wirklich HTML-Code schreibst, oder nur etwas was so tut als ob es HTML-Code wäre. http://validator.w3.org/
                  Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von verwendet werden

                  Kommentar


                  • #10
                    Es funkt jetzt habe dann noch ne frage
                    wie kann ich machen das jede Datei einzigartig ist also keine Datei den selben Namen hat.
                    z.B.
                    Datei1 und wenn man wieder Datei1 hoch lädt soll das dann automatisch einen anderen Namen bekommen z.B. Datei2

                    Kommentar


                    • #11
                      Zitat von Humpy Beitrag anzeigen
                      Es funkt jetzt ...
                      Es wäre nett wenn du kurz erläutern würdest, wie du es gelöst hast.

                      Zitat von Humpy Beitrag anzeigen
                      wie kann ich machen das jede Datei einzigartig ist also keine Datei den selben Namen hat.
                      Füge bei move_uploaded_file vor den letzten Punkt des Zieldateinamens eine Zeichenkette ein, die den Dateinamen eindeutig macht. Es gibt mehrere Möglichkeiten dazu, zum Beispiel:
                      • eine fortlaufende Nummer. Du suchtst im Zielverzeichnis so lang nach Nummern ([MAN]opendir[/MAN], [MAN]readdir[/MAN], [MAN]closedir[/MAN]), bis du eine freie findest.
                      • Datum, Uhrzeit und Benutzeridentifikator.

                      Je kritischer die Funktionalität ist, desto mehr Aufwand musst du betreiben. Bei kritischen Anwendungen musst du z.B. sicherstellen, das nicht zwei Leute gleichzeitig nach einer geeigneten Zeichenkette suchen.
                      Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von verwendet werden

                      Kommentar


                      • #12
                        Ich hab so ein script gefunden damit sollte es ja gehen (?)

                        PHP-Code:
                        /* Schreibst dein Upload Script.
                        Nach dem Uploaden schaust du mit dieser for-Schleife, ob die Datei ($filename) schon existiert. Wenn ja, mache aus "dateiname.jpg" dann "dateiname (1).jpg".
                        Wenn das aber auch schon existiert, dann "dateiname (2).jpg". */

                                
                        $filename $_FILES['datei']['name'];
                                
                        $extension end(explode("."$filename)); // extension ist die Dateiendung.
                                
                        $filename substr($filename0strlen($filename) - strlen($extension) - 1);
                                
                                
                        $temp $_FILES['datei']['tmp_name'];
                                
                                for (
                        $i 1file_exists("upload-ordner/$filename.$extension"); $i++) {
                                    
                        $filename $filename ' (' $i ')';
                                    }
                                
                        move_uploaded_file($temp"upload-ordner/$filename.$extension");  

                                
                        $filename "$filename.$extension";

                        // $filename kannst du dann in die Datenbank schreiben. 
                        Nur kann mir jmd. sagen wie ich das in meinem script einbaue??

                        Kommentar


                        • #13
                          1. Schau nach wo du in deinem Script move_uploaded_file aufrufst.
                          2. Ersetze diesen Aufruf durch das Script, das du gefunden hast.
                          3. Passe die Variablennamen und Verzeichnispfade in dem eingefügten Teil an.
                          Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von verwendet werden

                          Kommentar


                          • #14
                            aber iwi hat mein script doch gar net diese Variablen.

                            Kommentar


                            • #15
                              ja eben, darum musst du mindestens beim aufruf der funktion DEINE variabe nehmen
                              "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

                              Kommentar

                              Lädt...
                              X