Bilderupload incl. Skalierung

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Bilderupload incl. Skalierung

    Hi.
    Ich such mich jetzt schon dumm und dämlich.
    Ich kann eigendlich kein PHP, deswegen wäre ich sehr dankbar, wenn ihr mir ein fertiges Script geben könntet. :P

    Also was ich machen will:
    Mehrere Bilder hochladen, die dann automatisch umbenannt werden (in irgendwelche Namen, hauptsache es gibt nicht irgendwann 2 mit de gleichem Namen) und (ganz wichtig!) proportional verkleinert werden.
    Nachdem der Upload fertigstellt wurde sollten halt dann die Links zu den jeweiligen Bildern angezeigt werden, damit ich sie dann verlinken kann...

    Achja, wenn es nur geht, dass man die Bidler einzelnt hochläd - auch ok. Aber hautpsache ich hab ein Script, dass mir die Bilder verkleinert. :]

    Wenn jemand so ein Script hat, bitte melden.
    Jetzt schon vielen vielen Dank!

    mfg
    douze
  • Hi
    Ich hab mich mal hingesetzt und dir ein bisschen was zusammengeschrieben.
    Ich kann dir nicht garantieren, dass es 100% funktioniert, aber bei mir hat alles geklappt.
    Die PHP-Datei und die Ordner sind im Anhang.

    Vll kann den Code noch wer verbessern

    Quellcode

    1. <?php
    2. /* --> CONFIGURATION <-- */
    3. $uploaddir = "img/"; // Endverzeichnis
    4. $tempdir = "img/tmp/"; // Temporäres Verzeichnis
    5. $maxsize = 3000000; //in Bytes
    6. $maxwidth = 500; // Breite
    7. /* --> CONFIGURATION ENDE <-- */
    8. /* --> CODE <-- */
    9. /* Variablen
    10. * $var = Verzeichnis
    11. */
    12. function checknames($var) {
    13. for($i=0;$i<999999;$i++) {
    14. if(!file_exists($var.$i.".jpg")) {
    15. $j = $i;
    16. break;
    17. }
    18. }
    19. return $j;
    20. }
    21. /* Variablen
    22. * $var = alter Bildername
    23. * $var2 = Altes Verzeichnis
    24. * $var3 = Neues Verzeichnis
    25. * $var4 = Neue Bilderbreite
    26. * $var5 = Neuer Bildername
    27. */
    28. function imageresize($var, $var2, $var3, $var4, $var5) {
    29. $name = explode(".", $var);
    30. $old = $var2.$var;
    31. $aim = $var3.$var5.".jpg";
    32. $size = getimagesize($old);
    33. $witdh = $size[0];
    34. $height = $size[1];
    35. $newwitdh = $var4;
    36. $newheight = intval($height*$newwitdh/$witdh);
    37. $newpicture = imagecreatetruecolor($newwitdh,$newheight);
    38. $oldpicture = ImageCreateFromJPEG($old);
    39. imagecopyresampled($newpicture,$oldpicture,0,0,0,0,$newwitdh,$newheight,$witdh,$height);
    40. if(ImageJPEG($newpicture,$aim,100)) {
    41. $result = "true";
    42. }else{
    43. $result = "false";
    44. }
    45. return $result;
    46. }
    47. if(isset($_GET['do'])) {
    48. $type = explode(".", $_FILES['datei']['name']);
    49. $filetype = $type[count($type)-1];
    50. if($_FILES['datei']['error']) $error .= "<p align=\"center\">Allgemeiner Fehler!</p>";
    51. if($filetype!="jpg" AND $filetype!="jepg" AND $filetype!="JPG" AND $filetype!="JPEG") $error .= "<p align=\"center\">Unerlaubtes Dateiformat (nur jpg,jpeg)!</p>";
    52. if($_FILES['datei']['size'] > $maxsize) $error .= "<p align=\"center\">Datei zu grö&szlig;!</p>";
    53. if(isset($error)) {
    54. echo $error;
    55. }else{
    56. $filename = $_FILES['datei']['name'];
    57. if(move_uploaded_file($_FILES['datei']['tmp_name'], $tempdir.$filename)) {
    58. echo "<p align=\"center\">Upload erfolgreich!<br />\n";
    59. $size = getimagesize($tempdir.$filename);
    60. $i = 0;
    61. $j = checknames($uploaddir);
    62. if($size[0] > $maxwidth) {
    63. if(imageresize($filename, $tempdir, $uploaddir, $maxwidth, $j)) {
    64. echo "Neue Bildabmessungen gesetzt!<br />\n";
    65. $i++;
    66. }else{
    67. echo "Neue Bildabmessungen konnten nicht gesetzt werden!<br />";
    68. }
    69. }else{
    70. copy($tempdir.$filename, $uploaddir.$j.".jpg");
    71. echo "Alte Bildabmessungen konnte beibehalten werden!<br />";
    72. $i++;
    73. }
    74. unlink($tempdir.$filename);
    75. if($i==1) {
    76. echo "<p align=\"center\"><a href=\"?img=".base64_encode($j)."/".base64_encode($uploaddir)."\">Link zum Bild</a></p>\n";
    77. }
    78. }else{
    79. echo "<p align=\"center\">Upload fehlgeschlagen!</p>";
    80. }
    81. }
    82. }elseif(isset($_GET['img'])) {
    83. $img = explode("/",$_GET['img']);
    84. $size = getimagesize(base64_decode($img[1]).base64_decode($img[0]).".jpg");
    85. echo "<p align=\"center\"><div style=\"width:".$size[0].";height:".$size[1].";background-image:url(".base64_decode($img[1]).base64_decode($img[0]).".jpg);\" border=\"0\" ></div></p>\n";
    86. }else{ ?>
    87. <form enctype="multipart/form-data" action="?do" method="post">
    88. <p align="center"><input name="datei" type="file"></p>
    89. <p align="center"><input type="submit" value="Send File"></p>
    90. </form>
    91. <? }
    92. ?>
    Alles anzeigen


    Anzusehn ist des Ganze HIER

    lu
    Dateien
    • bilderupload.zip

      (2,21 kB, 235 mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von venum-lk ()