php.de

Zurück   php.de > Stellenangebote und Projektausschreibungen > Sonstige

Hinweise

Sonstige Suche nach Mithilfe an privaten oder Opensource-Projekten, Suche nach Gleichgesinnten zur Umsetzung neuer Ideen etc.

Antwort
 
LinkBack Themen-Optionen
Alt 18.09.2011, 12:18  
Neuer Benutzer
 
Benutzerbild von SilverSurfer90
 
Registriert seit: 18.09.2011
Beiträge: 23
PHP-Kenntnisse:
Anfänger
SilverSurfer90 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Simples Bildhosterscript erweitern

Hiho^^
Ich benutze gerade folgendes Script:
PHP-Code:
<?php
include('config.php');
?>
<html>


<head>
        <title>Bildhoster</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
        <link rel='shortcut icon' href='favicon.ico'>
        <link rel="stylesheet" href="style.css" type="text/css" />
        <script src="js/jquery.js" type="text/javascript"></script>
        <script src="js/documentation.js" type="text/javascript"></script>
        <script src="js/jquery.form.js" type="text/javascript" language="javascript"></script>
        <script src="js/jquery.MetaData.js" type="text/javascript" language="javascript"></script>
        <script src="js/jquery.MultiFile.js" type="text/javascript" language="javascript"></script>
        <script src="js/jquery.blockUI.js" type="text/javascript" language="javascript"></script>
        <script type="text/javascript" language="javascript">
         function feldhinzu(div) { 
          document.getElementById(div).innerHTML += '<input type ="file" name="upload[]"><br>';
         }
        </script>
    </head>
         <body bgcolor='#0A0A0A' background=''>
  <br />
  <br />
  <table width="500" border='0' align="center" style="text-align:center;" bgcolor='#606060'>
  <tr><td>
            <br><br>
            
            <?php
            $divd 
1024;
            
$isize $max_size $divd;
            
$isize2 round($isize);
            
?>

            W&auml;hlen sie ein Bild aus um es Hochzuladen<br>
            Maximale Gr&ouml;&szlig;e <?php echo $isize2;?> KB<br><br>
            Bildformate: jpg jpeg bmp png gif
            <form method="post" enctype="multipart/form-data" action="basic.php">
                <?php if(stristr($_SERVER['HTTP_USER_AGENT'], 'Opera')) {
                    echo 
'<input type="file" name="upload[]">'.
                    
'<div id="dv">'.
                    
'</div>'.
                    
'<a onClick="feldhinzu(\'dv\');">Feld mehr!</a>';
                } else { 
?>
                    <input type="file" class="multi" name="upload[]" accept="gif|jpg|jpeg|png|bmp"/>
                    <?php ?>
                    <input type="submit" value="Upload" name="upload">
                </form>
                <br><br>
  </td></tr>
  </table>
            </div>
        </body>
    </html>
PHP-Code:
<html>
    <head>
        <link rel="STYLESHEET" type="text/css" href="styles.css">
        <script type="text/javascript">
            <!--
            function highlight(field)
            {
                field.focus();
                field.select();
            }
            //-->
        </script>
        <title>Bildhoster</title>
    </head>
    <body bgcolor="#0A0A0A" background=''>
        <div>
            <center>
                <?
                
include "config.php";

                
//create thumbnails
                
function createthumb($name,$filename,$new_w,$new_h) {
                    
$system=explode('.',$name);

                    if (
preg_match('/jpg|jpeg|JPG/',$system[1])) {
                        
$src_img=imagecreatefromjpeg($name);
                    }

                    if (
preg_match('/png|PNG/',$system[1])) {
                        
$src_img=imagecreatefrompng($name);
                    }

                    if (
preg_match('/gif|GIF/',$system[1])) {
                        
$src_img=imagecreatefromgif($name);
                    }

                    
$old_x=imageSX($src_img);
                    
$old_y=imageSY($src_img);

                    if (
$old_x $old_y) {
                        
$thumb_w=$new_w;
                        
$thumb_h=$old_y*($new_h/$old_x);
                    }

                    if (
$old_x $old_y) {
                        
$thumb_w=$old_x*($new_w/$old_y);
                        
$thumb_h=$new_h;
                    }

                    if (
$old_x == $old_y) {
                        
$thumb_w=$new_w;
                        
$thumb_h=$new_h;
                    }

                    
$dst_img=ImageCreateTrueColor($thumb_w,$thumb_h);
                    
imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_w,$thumb_h,$old_x,$old_y);

                    if (
preg_match("/png/",$system[1])) {
                        
imagepng($dst_img,$filename);
                    }
                    if (
preg_match("/gif/",$system[1])) {
                        
imagegif($dst_img,$filename);
                    }

                    else {
                        
imagejpeg($dst_img,$filename);
                    }

                    
imagedestroy($dst_img);
                    
imagedestroy($src_img);

                }
                


                
//        if(!$_POST['ext_url']) {
                
foreach($_FILES["upload"]["name"] as $key => $value) {
                    if((
$_FILES['upload']['type'][$key] == 'image/pjpeg' ||
                        
$_FILES['upload']['type'][$key] == 'image/jpeg' ||
                        
$_FILES['upload']['type'][$key] == 'image/gif' ||
                        
$_FILES['upload']['type'][$key] == 'image/jpg' ||
                        
$_FILES['upload']['type'][$key] == 'image/png' ||
                        
$_FILES['upload']['type'][$key] == 'image/x-png')) {
                    
// generate random signs
                        
$zufall rand(1,9);
                        
$zufall2 rand(1,26);
                        
$buchstaben = array(     "1" => "arx",
                            
"2" => "opt",
                            
"3" => "bwy",
                            
"4" => "cqs",
                            
"5" => "viu",
                            
"6" => "rgh",
                            
"7" => "jdv",
                            
"8" => "klz",
                            
"9" => "bfi", );

                        
$buchstaben2 = array(    "1" => "a",
                            
"2" => "b",
                            
"3" => "c",
                            
"4" => "d",
                            
"5" => "e",
                            
"6" => "f",
                            
"7" => "g",
                            
"8" => "h",
                            
"9" => "i",
                            
"10" => "j",
                            
"11" => "k",
                            
"12" => "l",
                            
"13" => "m",
                            
"14" => "n",
                            
"15" => "o",
                            
"16" => "p",
                            
"17" => "q",
                            
"18" => "r",
                            
"19" => "s",
                            
"20" => "t",
                            
"21" => "u",
                            
"22" => "v",
                            
"23" => "w",
                            
"24" => "x",
                            
"25" => "y",
                            
"26" => "z", );

                        
$unikat $buchstaben[$zufall] . time() . $buchstaben2[$zufall2];

                        switch (
$_FILES['upload']['type'][$key]) {
                            case 
'image/pjpeg':
                                
$format '.jpg';
                                break;
                            case 
'image/jpeg':
                                
$format '.jpg';
                                break;
                            case 
'image/gif':
                                
$format '.gif';
                                break;
                            case 
'image/jpg':
                                
$format '.jpg';
                                break;
                            case 
'image/png':
                                
$format '.png';
                                break;
                            case 
'image/x-png':
                                
$format '.png';
                                break;
                        }
                        
// Zeitstempel festhalten
                        
$time_var=time();
                        
$file_tmp=$_FILES['upload']['tmp_name'][$key];
                        
$file_new=''.$path.$unikat.$format.'';

                        
// Bild hochladen
                        
move_uploaded_file($file_tmp,$file_new);

                        
// Rechte setzen
                        // chmod($file_new, 777);

                        //set url variables
                        
$imgf $unikat.$format;
                        
$thbf $tpath.$imgf;
                        
$urlf 'http://' .$domain .'/' .$path.$imgf;

                        if (
$groesse filesize($path $imgf) > $max_size) {
                            
unlink($path $imgf);
                            exit(
'Zu gro&szlig;e Datei! ('.$groesse.')');
                        }
                        
createthumb($path.$imgf,$tpath.$imgf,$tsize,$tsize);
                        
?>

                <table border='0' bgcolor='#303030'>
                    <tr><td>Vorschau:</td><td><a href='<?php echo $urlf?>'><img src='<?php echo $thbf.$img ?>'></a></td></tr>
                    <tr><td>Direktlink:</td><td><input type="text" name="thetext" onClick='highlight(this);' size="120" value="<?php echo $urlf?>"></td></tr>
                    <tr><td>BBCode:</td><td><input type="text" name="thetext" onClick='highlight(this);' size="120" value="[IMG]<?php echo $urlf?>[/IMG]"></td></tr>
                    <tr><td>Mit Spoiler:</td><td><input type="text" name="thetext" onClick='highlight(this);' size="120" value="[SPOILER=Bild anzeigen][IMG]<?php echo $urlf?>[/IMG][/SPOILER]"></td></tr>
                </table>
                <br />
                <br />

                    <?php
                    
}
                }
                
$ext_url_count 1;
                while(isset(
$_POST['ext_url_'.$ext_url_count]) &&
                    !empty(
$_POST['ext_url_'.$ext_url_count])) {
                    
$url $_POST['ext_url_'.$ext_url_count];

                    
$new_unikat $unikat;

                    while(
$unikat == $new_unikat) {
                        
$new_unikat 'uni'.md5($_POST['ext_url_'.$ext_url_count].time());
                    }

                    
$unikat $new_unikat;

                    
$ext_url_count++;
                    
                                        function 
getHost($Address) {
                                       
$parseUrl parse_url(trim($Address));
                                      return 
trim($parseUrl[host] ? $parseUrl[host] : array_shift(explode('/'$parseUrl[path], 2)));
                                        } 
                                        if (
getHost($url) == 'anisearch.de' || getHost($url) == 'www.anisearch.de') {
                                            
$url substr($url0, -13);
                                        }
                    
                    
$format strtolower(strstr(basename($url), '.'));
                    
//$format = strrev(strtolower(strstr(strrev(basename($url))), '.', true)); Ab PHP Version 5.3.x einfach auskommentieren :-)

                                        
                    
if ($format != '.jpg' AND $format != '.jpeg' AND $format != '.gif' AND $format != '.png') {
                    
//                exit('Kein g&uuml;ltiges Bild-Format! ('.$format.')');
                        
continue;
                    }

                    
$output $unikat $format;
                    
$fp fopen($url"r");

                    if(
is_resource($fp)) {
                        
$i=1;
                        for(;
$i<$max_size;$i++) {
                            if(!
feof($fp)) {
                                
$text.= fgets($fp$i);
                            }
                            else { break; }
                        }
                        
fclose($fp);
                    } else {
                        continue;
                    }

                    
$fp2 fopen($output,"w+");
                    if(
is_resource($fp2)) {
                        
fwrite($fp2$text);
                        
fclose($fp2);
                    } else {
                        continue;
                    }

                    
copy($output"./" $path $output);
                    
unlink($output);

                    
//gr&ouml;&szlig;e &uuml;berpr&uuml;fen

                    
if ($groesse filesize($path $output) > $max_size) {
                        
unlink($path $output);
                        exit(
$groesse);
                    }

                    
//set url variables
                    
$imgf $output;
                    
$thbf $tpath.$imgf;
                    
$urlf 'http://' .$domain .'/' .$path .$imgf;
                    
chmod("./" $path $imgf,0400);
                    
createthumb($path.$imgf,$tpath.$imgf,$tsize,$tsize);
                    
?>
                <table border='0' bgcolor='#606060'>
                    <tr><td>Vorschau:</td><td><a href='<?php echo $urlf?>'><img src='<?php echo $thbf ?>'></a></td></tr>
                    <tr><td>Direktlink:</td><td><input type="text" name="thetext" onClick='highlight(this);' size="120" value="<?php echo $urlf?>"></td></tr>
                    <tr><td>BBCode:</td><td><input type="text" name="thetext" onClick='highlight(this);' size="120" value="[IMG]<?php echo $urlf?>[/IMG]"></td></tr>
                    <tr><td>Mit Spoiler:</td><td><input type="text" name="thetext" onClick='highlight(this);' size="120" value="[SPOILER=Bild anzeigen][IMG]<?php echo $urlf?>[/IMG][/SPOILER]"></td></tr>
                </table>
                <br><br>

                <?php

                
}
                
?>
                <a href='./index.php'>zur&uuml;ck</a>
            </center>
        </div>
    </body>
</html>
Ich hab es schon viel umgebaut, allerdings ohne wirkliche Ahnung von PHP. Deshalb sieht es wahrscheinlich etwas murksig aus xD

Naja, ich brauche ein paar neue Funktionen und komme mit rumgebastle nicht weiter..
Deshalb suche ich jemanden der mir das Script erweitern/umschreiben/neu schreiben kann!

Folgendes soll es können:
-Mehrere Bilder auf einmal hochladen. Nicht nur mehrere Uploadfelder, sondern, dass man mehrere Bilder mit einem klick hochladen kann wie bei imageshack zB. Ordner oder Archive(zip, 7z, rar usw) hochladen zu können wäre auch cool, aber es sollte nich zu kompliziert mit Java oder Flash oder so werden, ich möchte immer gern noch alles nachvollziehn können..
-Von URL hochladen, irgendwie hab ich das mal rausgenommen und weiß nich mehr wie ichs wieder rein krieg xD
-Absicherung gegen Upload von nicht-bild-dateien, zB. mit getimagesize. Und chmod iwi, das man keine Dateien ausführen kann..
-Eine Ausgabe die alle hochgeladenen Bilder zusammenfasst, also das unter den ganzen Bildern zb noch ein Feld ist das Links zb so ausgibt:
Code:
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild1.jpg[/IMG][/SPOILER]
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild2.jpg[/IMG][/SPOILER]
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild3.jpg[/IMG][/SPOILER]
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild4.jpg[/IMG][/SPOILER]
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild5.jpg[/IMG][/SPOILER]
Das Format sollte anpassbar sein, das etwa auch sowas möglich ist:
Code:
1
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild1.jpg[/IMG][/SPOILER]

2
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild2.jpg[/IMG][/SPOILER]

3
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild3.jpg[/IMG][/SPOILER]

4
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild4.jpg[/IMG][/SPOILER]

5
[SPOILER=Bild anzeigen][IMG]www.url.de/bilder/bild5.jpg[/IMG][/SPOILER]

oder

[SPOILER=Bilder anzeigen]1
[IMG]www.url.de/bilder/bild1.jpg[/IMG]

2
[IMG]www.url.de/bilder/bild2.jpg[/IMG]

3
[IMG]www.url.de/bilder/bild3.jpg[/IMG]

4
[IMG]www.url.de/bilder/bild4.jpg[/IMG]

5
[IMG]www.url.de/bilder/bild5.jpg[/IMG][/SPOILER]
-Uploadfortschritt (Fortschrittsbalken). Der Upload bricht oft ohne Fehlermeldung ab! Eine Fortschrittsanzeige soll das Problem beheben hab ich gelesen, vlt liegt es auch woanders dran?


Wenn mir das jemand alles einbaun und den Code etwas auf Vordermann bringen könnte, wär ich ihm sehr dankbar xD
Natürlich bin ich auch bereit dafür zu zahlen, müsst ihr ma schreiben wie so die preislichen Vorstellungen sind :3

Ich bastel auch gerne selber und lerne gern dazu, wenn ihr Tutorials oder Ideen habt wie ich das einbauen kann, immer her damit^^
__________________
~MfG SilverSurver90
SilverSurfer90 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Antwort


Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
array erweitern CL90 PHP Tipps 2010 7 15.04.2010 17:12
[Erledigt] Reguläre Ausdrücke, simples Problem, aber... MrVienna PHP Tipps 2009 9 12.09.2009 10:42
MySQL Tabelle erweitern? SilverVegeto Datenbanken 1 16.11.2008 15:22
php Blätterfunktion erweitern killerboost PHP Tipps 2007 5 16.08.2007 08:46
Blätterfunktion erweitern PHP Tipps 2007 2 01.11.2005 11:31
SELECT um eine Bedingung erweitern ?! Datenbanken 2 22.10.2005 10:09
[Erledigt] Formulareingabe automatisch erweitern Datenbanken 5 18.10.2005 17:12
[DOM] Node um ein Child erweitern ??? HStev PHP Tipps 2005-2 1 04.07.2005 18:11
News Script erweitern ? PHP Tipps 2005 6 18.02.2005 17:51
PHP Reffer Script erweitern? Kori PHP Tipps 2005 8 17.02.2005 16:07
[Erledigt] textarea mittel PHP erweitern? PHP-Fortgeschrittene 10 09.02.2005 17:04
simples Problem PHP Tipps 2005 10 08.01.2005 02:10
Suchfunktion erweitern, aber WIE??? Hilfe! PHP Tipps 2004-2 7 30.11.2004 07:59
Tabelle erweitern, Spalten hinzufügen GeorgM Datenbanken 3 24.11.2004 17:06
Mit php eine bestehende html-tabelle erweitern PHP Tipps 2004 1 12.07.2004 08:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
bilder hochladen und url anzeigen script, input type file css

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:47 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum