Ankündigung

Einklappen
Keine Ankündigung bisher.

Upload Hilfe!!

Einklappen

Neue Werbung 2019

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

  • Upload Hilfe!!

    Hallo Leute,

    ich bin neu hier und auch neu in der Sprache PHP.
    Jetzt hab ich da mal eine Frage.
    Ich will gern eine Homepage erstellen wo andere Dateien uplaoden können und ich dann auf diese zugreifen kann entweder sollen die auf dem Server abgespeichert werden oder sollen per mail an mich geschickt werden.
    Es handelt sich um dateien namens .gbx das sind Maps von einem Spiel.
    Vllt könnt ihr mir erstmal helfen dass ich das hinkriege.
    Ich hab mehrere scripte ausprobiert aber die klappen wohl nicht oder meine webhoster (redio,pytal) speichern es nicht ab


    Gruß

    Numb

  • #2
    Hallo numb-freak,

    also ohne Code können wir dir hier nicht helfen.

    Was genau funktioniert nicht?

    Wenn du Dateien per E-Mail versenden willst, bietet sich "phpmailer" an.
    [B]Mfg Tomtaz[/B]
    [I]"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..." [/I]:!::shock:

    Kommentar


    • #3
      Hallo,

      also was nicht funktioniert hat is dass die datei abgespeichert wurde.

      ja ich such dann gleich mal en code raus.

      muss grad mal sehn.

      gruß

      numb

      Kommentar


      • #4
        maps von einem Spiel? Die sind doch bestimmt ziehmlich groß die Dateien oder? wahrscheinlich zu groß

        Kommentar


        • #5
          hallo ,
          lies dir dazu einfach das kapitel zu file-uploads durch
          PHP: Steuerung von Dateiuploads - Manual

          mit den snippets unten aus dem manual sollte es eigentlich schon gehen
          (die variabke $fileuploads anpassen )


          Code:
          <form enctype="multipart/form-data" action="_URL_" method="post">
          <input type="hidden" name="MAX_FILE_SIZE" value="30000">
          Send this file: <input name="userfile" type="file">
          <input type="submit" value="Send File">
          </form>
          Code:
          <?
          // In PHP kleiner als 4.1.0 sollten Sie $HTTP_POST_FILES anstatt $_FILES verwenden.
          // In PHP kleiner als 4.0.3 verwenden Sie copy() und is_uploaded_file() anstatt von
          // move_uploaded_file()
          
          $uploaddir = '/var/www/uploads/';
          
          print "<pre>";
          if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
              print "File is valid, and was successfully uploaded.  Here's some more debugging info:\n";
              print_r($_FILES);
          } else {
              print "Possible file upload attack!  Here's some debugging info:\n";
              print_r($_FILES);
          }
          ?>

          Kommentar


          • #6
            Bitte PHP und CODE Tags verwenden!

            Kommentar


            • #7
              vielleicht schaust du auch erstmal ob dein webhoster überhaupt php unterstüzt? Dann würde ich vieleicht eine Datenbank verwenden, die sachen die hochgeladen werden, werden in der datenbank dann gespeicher, dann könntest sie dir auslesen...für mailversand wie schon erwähnt phpmailer verwenden und naja die dateigröße solltest du vielleicht eben auch beachten damit du nicht soviel traffic produzierst

              und code wäre hilfreich sonst kann sich keiner davon ein bild machen

              gruß

              Kommentar


              • #8
                Hallo,

                danke erstmal für den Code ich werde mir den angucken und werde es ausprobieren mein webhoster kann php und hat auch mysql und die daten sind nur max 10kb groß

                durchschnittlich sind die 4kb groß.

                nächstes mal mach mit einem code rein

                trotzdem vielen vielen dank

                gruß

                numb

                Kommentar


                • #9
                  danke für deinen code aber ich hab da einen anderen jetzt sagt der aber auf der Homepage.
                  so er sagt ja fehler in zeile 135 hier is die zeile
                  PHP-Code:
                   echo "<BR><font color=#FF0000><b>Datei nicht hochgeladen<BR></b></font>"


                  Hier is der ganze Code:

                  PHP-Code:
                  <?php

                  // das folgende ganz an den anfang (nach <?php..) kopieren

                  function make_filename($filename$pfad)
                  {
                  //nicht die non-plus ultra funktion.. funktioniert nur mit 3 zeichen
                  $end substr($filename, -3);
                  $start substr($filename0, -3);
                  $i=1;
                  while(
                  is_file($start.$i.'.'.$end))
                  {
                  $i++;
                  }
                  return 
                  $start.$i.'.'.$end;
                  }


                  //das hier an entsprechender stelle ersetzen



                     #####KONFIGURATION #############################################


                     // Absoluter Pfad zum Ordner in den die Datei hochgeladen werden soll.
                     
                  $pfad "/var/www/numbfreak.redio.de/upload/";


                     
                  // Soll eine maximale Größe der Datei festgelegt werden ?
                     
                  $sizeabfrage "yes";

                     
                  // Maximale Größe der Datei (Falls $sizeabfrage = "yes" ist)
                     
                  $filesize "1024000";

                     
                  // Soll die maximale Größe auch angezeigt werden ?
                     
                  $sizeanzeige "yes";

                     
                  // Was für Dateitypen sollen erlaubt sein ?
                     
                  $extend "GBX";

                     
                  // Sollen die erlaubten Dateitypen angezeigt werden ?
                     
                  $extendanzeige "yes";

                     
                  // Check if file al exist, yes? make filename 'higher'.
                     
                  $i "$i + 1";

                     
                  // Layout
                     
                  $body "<body bgcolor=#999999 text=#000000 link=#FF0000 alink=#FF0000 vlink=#FF0000>";
                     
                  $font "<font face=verdana size=2>";

                     
                  ##### Style KONFIGURATION #######################################
                  ?>

                  <html>
                  <head>
                  <title>UPLOAD</title>
                  </head>
                  <?php
                     
                  echo "$body";
                     echo 
                  "$font";
                  ?>

                  <div align="center">

                  <?
                  ?>

                  <table align="center">

                  <form action="upload.php" method="post" enctype="multipart/form-data">
                  <BR>
                  <b>Bitte Datei auswählen:</b>
                  <BR>
                  <?
                     if ($sizeanzeige == "yes") {
                        echo ("Maximale Größe: 1024 kByte");
                     }
                  ?>
                  <BR>
                  <?
                     if ($extendanzeige == "yes") {
                        echo ("Erlaubte Dateitypen: ".$extend);
                     }
                  ?>
                  <BR><BR>
                  <input type="file" size="30" name="file">
                  <BR>
                  <input type="Submit" name="senden" value="Hochladen">

                  </form>

                  </table>

                  <?

                  ##### Ab hier nichts mehr ändern !! ################################

                     $fehler = FALSE;

                     if ($senden) {
                        if ($file_name == "") {
                           echo "<BR><font color=#FF0000><b>Es wurde keine Datei ausgewählt!<BR></b></font>";
                           $fehler = TRUE;
                        }

                  if (!$fehler)
                  if (file_exists("$pfad/$file_name")) {
                  echo "<BR><font color=#FF0000><b>Dateiname schon vorhanden!<BR></b></font>";
                  $file_name = make_filename($file_name,$pfad);
                  echo "<BR><font color=#00FF00><b>Dateiname schon vorhanden!<BR>Neuer Dateiname: ".$file_name."<BR></b></font>";

                  }

                        if (!$fehler)
                        if ($sizeabfrage == "yes") {
                           if ($file_size > $filesize) {
                              echo "<BR><font color=#FF0000><b>Die Datei ist zu groß!<BR></b></font>";
                              $fehler = TRUE;
                           }
                        }

                        if (!$fehler)
                        if (!eregi("($extend)$", $file_name)) {
                           echo "<BR><font color=#FF0000><b>Dieser Dateityp ist nicht erlaubt!<BR></b></font>";
                           $fehler = TRUE;
                        }

                        if (!$fehler) {
                          if (copy($file, $pfad."/".$file_name)) {
                             echo "<BR><font color=#00FF00><b>Datei hochgeladen</b></font><BR>;
                             $fehler = FALSE;
                          }
                          else {
                             echo "<BR><font color=#FF0000><b>Datei nicht hochgeladen<BR></b></font>";
                             $fehler = TRUE;
                          }

                        }
                     }

                     if ($fehler || !$senden) {

                  }
                   echo "<BR><hr width=100>";
                   echo "<font size=1></font>";
                  ?>

                  </font>
                  </div>
                  </body>
                  </html>
                  Jetzt sieht ihr vllt dass ab en bestimmten Zeitpunkt
                  if ($file_size > $filesize)

                  anscheinend Php geschlossen wird was ich komisch finde

                  Gruß

                  Numb

                  Kommentar


                  • #10
                    Och komm, schau doch mal an was du geschrieben hast. Das Syntaxhighlight zeigt dir doch exakt an wo dein Fehler ist! Wofür gibt es denn Syntaxhighlight ... deinen Code vorlesen wollen wir wirklich nicht.

                    Kommentar


                    • #11
                      hallo,

                      klar weiß ich wo der fehler is in welcher zeile weiß aber nicht was der fehler is und was ich ändern soll

                      gruß numb

                      Kommentar


                      • #12
                        Dann überleg doch mal, warum alle Zeichenketten rot eingefärbt werden, nur die eine nicht und warum ganzen Zeichen vorher rot eingefärbt sind:
                        PHP-Code:
                                if (copy($file$pfad."/".$file_name)) {
                                   echo 
                        "<BR><font color=#00FF00><b>Datei hochgeladen</b></font><BR>;
                                   
                        $fehler = FALSE;
                                }
                                else {
                                   echo "
                        <BR><font color=#FF0000><b>Datei nicht hochgeladen<BR></b></font>";
                                   
                        $fehler TRUE;
                                } 
                        </span></span>
                        Programming PHP

                        Kommentar


                        • #13
                          vllt wegen color?

                          ich weiß es leider selbst nicht

                          gruß

                          numb

                          Kommentar


                          • #14
                            guck mal genau hin von wo bis wo die rote Färbung geht

                            Kommentar


                            • #15
                              da fehlt en "
                              nach <br>

                              gruß

                              numb

                              Kommentar

                              Lädt...
                              X