Ankündigung

Einklappen
Keine Ankündigung bisher.

Bildname änderung

Einklappen

Neue Werbung 2019

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

  • Bildname änderung

    Guten Morgen zsammen,

    hab da mal ne Frage.

    Wie kann ich in folgenden Script die Bild endungen wie z.b. gif oder png
    dem Orginal File zuordnen?

    if($_FILES['bildfile']['name']!=""){ //wenn eine file übermittelt wurde
    $_FILES['bildfile']['name']=$benutzer.time().".jpg"; //nehme den username+die aktuelle zeit als filename
    $bildname = $_FILES['bildfile']['name'];
    }
    ich hab mir das igrgendwie so gedacht.

    $endung = $_FILES['name'];

    if($_FILES['bildfile']['name']!=""){ //wenn eine file übermittelt wurde
    $_FILES['bildfile']['name']=$benutzer.time().$endung; //nehme den username+die aktuelle zeit als filename
    $bildname = $_FILES['bildfile']['name'];
    }
    jedoch komme ich auf diese art nicht zur endung.

    weiss einer wie ich das machen kann?
    Gruß JEGO ;-)

    Ein PHP Script tut, was Du schreibst, nicht was Du willst.

  • #2
    Frage zu dem Problem

    Tag auch.

    Was enthält denn

    Code:
    $_FILES['name']
    ?

    Wäre Hilfreich das zu wissen.

    MfG
    Yussuf-ff[/code]

    Kommentar


    • #3
      Allso eigendlich wollte ich erreichen, dass $_FILES['name']
      aus dem Form übergeben wird.
      und zwar sollte dass die Endung vom Bild sein.

      das heisst normal wird ja das Bild so übergeben.
      $_FILES['bildfile']['name'];

      ich habe gedacht (was aber falsch war)
      ich könnte einfach $_FILES['name']; daraus machen und hätte dann die Bildendung.
      Gruß JEGO ;-)

      Ein PHP Script tut, was Du schreibst, nicht was Du willst.

      Kommentar


      • #4
        Lösung?

        Tag auch.

        versuch mal was in

        Code:
        $bildfile_name oder $datei_name
        gespeichert ist... Die brauchst Du nicht anlegen...

        Kann sein dass diese Variable test.png beinhaltet und das könntest Du dann parsen...

        MfG
        Yussuf-ff

        Kommentar


        • #5
          Geht's dir nur darum, die Dateinamenerweiterung herauszufischen und weiterzuverwenden?

          Das kannst du mit
          Code:
          $endung=substr(strrchr($_FILES['userfile']['name'], '.'), 1);
          bewerkstelligen.

          Kommentar


          • #6
            mit $bildfile_name wird mir das Bild genannt das ich gerade uploaden will.

            z.B. muster.gif

            wie komme ich jetzt an die Endung?

            bzw wie extrahiere ich die?
            Gruß JEGO ;-)

            Ein PHP Script tut, was Du schreibst, nicht was Du willst.

            Kommentar


            • #7
              Genauso wie Saraneus geschrieben hat...

              Kommentar


              • #8
                @Saraneus

                ich hab dein eintrag garnicht gesehen.
                Aber Danke genau so geht es.

                das File wird jetzt richtig benannt und auch richtig gespeichert.

                jetzt hab ich aber gesehen das mir die Pic.php gif und ping nicht darstellt.

                was muß ich da ändern?


                Code:
                $s = getimagesize($img); 
                $breite = $s[0]; 
                $höhe = $s[1]; 
                if($s[1] >= $s[0]) 
                { 
                   if($höhe >= $size AND $size != 0) 
                    { 
                      $breite=(int)$breite/($höhe/$size); 
                       $höhe=$size; 
                    } 
                } 
                elseif($s[0] >= $s[1]) 
                { 
                   if($size != 0 AND $breite >= $size) 
                    { 
                      $höhe=(int)$höhe/($breite/$size); 
                      $breite=$size; 
                    } 
                } 
                $a = imagecreatefromjpeg($img); 
                $b = imagecreatetruecolor($breite, $höhe); 
                imagecopyresized($b, $a, 0, 0, 0, 0, $breite, $höhe, $s[0], $s[1]); 
                imagejpeg($b); 
                ImageDestroy($a); 
                ImageDestroy($b);
                Gruß JEGO ;-)

                Ein PHP Script tut, was Du schreibst, nicht was Du willst.

                Kommentar


                • #9
                  Du musst statt ImageJPEG() ImageGIF() oder ImagePNG() verwenden. Genauso bei ImageCreateFromXXX()

                  Kommentar


                  • #10
                    ich möchte aber aber alle 3 geht das auch?
                    und wen ja wie?
                    Gruß JEGO ;-)

                    Ein PHP Script tut, was Du schreibst, nicht was Du willst.

                    Kommentar


                    • #11
                      Code:
                      if($img = ImageCreateFromJPEG("datei"))
                        // JPEG
                      
                      elseif($img = ImageCreateFromGIF("datei"))
                        // GIF
                      
                      elseif($img = ImageCreateFromPNG("datei"))
                        // PNG
                      
                      else
                        echo "Geht net!!";

                      Kommentar


                      • #12
                        rofl

                        Kommentar


                        • #13
                          Hallo wiedermal,

                          Ich hab das einigemale probiert, aber irgend wie ohne erfolg.

                          Wo und wie soll ich das einfügen?
                          kann mir da wer helfen?

                          Irgendwie steht bei mir wohl einer auf der Leitung.
                          Gruß JEGO ;-)

                          Ein PHP Script tut, was Du schreibst, nicht was Du willst.

                          Kommentar


                          • #14
                            Kann wer weiterhelfen?

                            Bis jetzt hab ich es so versucht.
                            Code:
                             
                            <?
                            $s = getimagesize($img); 
                            $breite = $s[0]; 
                            $höhe = $s[1]; 
                            if($s[1] >= $s[0]) 
                            { 
                            if($höhe >= $size AND $size != 0) 
                            { 
                            $breite=(int)$breite/($höhe/$size); 
                            $höhe=$size; 
                            } 
                            } 
                            elseif($s[0] >= $s[1]) 
                            { 
                            if($size != 0 AND $breite >= $size) 
                            { 
                            $höhe=(int)$höhe/($breite/$size); 
                            $breite=$size; 
                            } 
                            } 
                            if($img = ImageCreateFromJPEG("$img")) 
                            { 
                            $a = imagecreatefromjpeg($img); 
                            $b = imagecreatetruecolor($breite, $höhe); 
                            imagecopyresized($b, $a, 0, 0, 0, 0, $breite, $höhe, $s[0], $s[1]); 
                            imagejpeg($b); 
                            ImageDestroy($a); 
                            ImageDestroy($b); 
                            } 
                            elseif($img = ImageCreateFromGIF("$img")) 
                            { 
                            $a = imagecreatefromgif($img); 
                            $b = imagecreatetruecolor($breite, $höhe); 
                            imagecopyresized($b, $a, 0, 0, 0, 0, $breite, $höhe, $s[0], $s[1]); 
                            imagegif($b); 
                            ImageDestroy($a); 
                            ImageDestroy($b); 
                            } 
                            elseif($img = ImageCreateFromPNG("$img")) 
                            { 
                            $a = imagecreatefrompng($img); 
                            $b = imagecreatetruecolor($breite, $höhe); 
                            imagecopyresized($b, $a, 0, 0, 0, 0, $breite, $höhe, $s[0], $s[1]); 
                            imagepng($b); 
                            ImageDestroy($a); 
                            ImageDestroy($b); 
                            } 
                            else 
                            { 
                            echo "Geht net!!"; 
                            } 
                            ?>
                            doch leider bekomme ich folgende Fehlermeldung.

                            Code:
                            Warning: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error: in F:\Internet\24tourist\kunden\pic.php on line 21
                            
                            Warning: imagecreatefromjpeg(): '../kundenbilder/test10893653341.png' is not a valid JPEG file in F:\Internet\24tourist\kunden\pic.php on line 21
                            Geht net!!
                            Gruß JEGO ;-)

                            Ein PHP Script tut, was Du schreibst, nicht was Du willst.

                            Kommentar


                            • #15
                              So jetzt hab ichs selbst zusammen bekommen.

                              PHP-Code:
                              $s getimagesize($img); 
                              $breite $s[0]; 
                              $höhe $s[1]; 
                              $bildtyp substr(strrchr($_GET['img'], '.'), 1);
                              if(
                              $s[1] >= $s[0]) 

                                 if(
                              $höhe >= $size AND $size != 0
                                  { 
                                    
                              $breite=(int)$breite/($höhe/$size); 
                                     
                              $höhe=$size
                                  } 

                              elseif(
                              $s[0] >= $s[1]) 

                                 if(
                              $size != AND $breite >= $size
                                  { 
                                    
                              $höhe=(int)$höhe/($breite/$size); 
                                    
                              $breite=$size
                                  } 

                              if (
                              $bildtyp == "jpg" or $bildtyp == "jpeg"


                              $a imagecreatefromjpeg($img); 
                              $b imagecreatetruecolor($breite$höhe); 
                              imagecopyresized($b$a0000$breite$höhe$s[0], $s[1]); 
                              imagejpeg($b); 
                              ImageDestroy($a); 
                              ImageDestroy($b); 
                              }
                              elseif (
                              $bildtyp == "png")
                              {
                              $a imagecreatefrompng($img); 
                              $b imagecreatetruecolor($breite$höhe); 
                              imagecopyresized($b$a0000$breite$höhe$s[0], $s[1]); 
                              imagepng($b); 
                              ImageDestroy($a); 
                              ImageDestroy($b);

                              Gruß JEGO ;-)

                              Ein PHP Script tut, was Du schreibst, nicht was Du willst.

                              Kommentar

                              Lädt...
                              X