Upload Fehler

Code:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/web60/html/g2g/user_online_boxes.php:88) in /var/www/web60/html/g2g/_functions.php on line 65
ÿØÿà?JFIF??????ÿþ?>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛ?C?    $.' ",#(7),01444'9=82<.342ÿÛ?C  2!!22222222222222222222222222222222222222222222222222ÿÀ??ú?È"?ÿÄ??????????? ÿÄ?µ???}?AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ???????? ÿÄ?µ??w?AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ?????÷ú(¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€ (¢€bŠ(?Å¢Š?1F(¢€QŠ( bŠ(?Å¢Š?1F(¢€QŠ«©êVz>›q¨_Ü$¶è^Ið?þNõá¾ ý£ãKˆÓÃú9’%ÞIzÛw¯¢ªž>¤þï•æ~0øÝá¿ êiФÚì\H¶åDhßÝg'¯Ð}x¯*ñ/ÇÝWµ³M*¤É3\q —û dp1œûבIÉ94î²þÒš½V‡Ã¶«hÝÜ1vô!€?}6šô_ücðï‹ÛìÒ¸ÒïøÄR?$ÿ?qº7Óƒí_"Ñ@ ò ¯(øãøH|-ý‹y(mCKP‹“ËÁÑOá÷Oáë^¯@(ÅPŠ(¢€Š( Š*²_ÚK}5”w0µÔ*¯$!Át ¤Ž£84c Vdž"Òa¿šÊ[Èã–¢Bçj©b©cÆNxÇÒ¾tñ‡ÅvËâDß$f &îh’‘¶JT•ûp„Ž™^1šò»íVûRžâkË©%{™Œò–nCŸ›¼ŸÎ€>¼´ø·à›íQ¬¡×!ùb2yÒ+$|g#s?3Ÿ~Õ5ïÅ_Ø,f_ÙÈ$RÃÈc.1ŽÀpyèpx>•ñôýÏÇíMsI²Ó ó-næ uutþH¶_3nâ0sò‚ÝGgœè¼7â…oìZÞáÐá£Î×ãî¶2zô¯ˆ*Å•äÖ°Ý[Í,2ÄáÖH›k)9Ö€>÷¢¹_øïNñÍÕÆ©³"1~ìÈß‚HÎ0qÅuT?QEaøË[oø;VÕ%µ³<`ÿ?_ÔŠ?ùããä×üA'‡ìfa¦iîRP§‰¦}Bôù5äté$ydi$bÎä³3’Ozm?QE?QE?tžñL¾ñ…Ž®…ŒHû.MÃê=À¯¶#‘ddBXt ×ÀuëZ×Åë™þèþ°žHõ‚þUàˆ“åUÕ—úÞ€>¥¢¼7à/õ=nâóú½Ó\´ íe’ûA”“Ô®?Ãܨ?¢Š(?¢’Ž”çß~$YøN[O.i5èdy\y_)É>·©íƒò¹ñ6¸ÚÈÖ©tuTý ÈK¸Ú¨t⻎úºjŸ%Š˜ç†ÎÞ8ÆÀ…<³ŽùcŸÊ¼Ê€,²O3Ë+³ÈìYÙŽKÉ&™E?QE?QEì߳ƻsmâ›+hZÞò#<ólc Ø0£9À\±íÔõ¯¦káOk—žñžc)Ž{yqüKÑ”û‘ø×Ý*ÁÐ2A€^kñÞi"øW|¨Ä g…Æð˜é5ç¿[á&°Ì ”hO¡ó"hä:(¢€ (¢€ (¢€ (¢€=ফm¥|OÓžê*;…ke8's¸Â/Šúö¾ŽG†T–'d‘ee8*GB n\x×ÄwZí¶·6pÚ²ªÃ08*`1ëë“œäÐÜ4V/„µÄñ'„ô½]^6{›tyDg!dÇοƒd~PÍq5ù¼;ðßU»¶Çs"¼L.B’b±ÔWk^Mû@kðiž]$¢½Æ©0T3µ†fùÚ?àTòÉ$œš(¢€ (¢€ (¢€ (¢€=àÿ?„ôÿ?øÒ(µÈcŠÔ …«1rGeöÉç8éܯ«â_‡×ói¿ü?qž[}¾Ù‰ãc°VþÆ¾Ú ¯%ý¡uiðî+Eëy{÷T3ÿ?5Zõªù÷ö•Ô”É éjß2‰ng× ¿ÉèÀ¨¢Š?(¢Š?(¢Š?(¢Š?(¢Š?õï€Þ6›GñBøvêø—jDˆÕÏ”÷±·Üí¢¼Ó×_añF“wœy°ËŸM®ô¢€>ì¯ ý£´ÍFïKÒ¯ ³ß§Ø™ ÅÆõùÊ*Œg<ã°5îUã´n¥öoéúz¹wzï")'õe ™(¢Š?(¢Š?(¢Š?(¢Š?|2¼G,lVD`Êñ ×Þ:eâj:U¥ìl;ˆRUaІPA|_Yü ×&Ö~Á ÓN™#ø?¿`? ?ôÊù7ãÕóÝüQº›+go*=]ÿ?ÍÍ}e_|Vî>(øä9"ç`ú*… ÆÑE?QE?QE?QE?QE?QV,,nu;ø,lái®gqQ¯Vbp÷½|ÁûDkkã{M.97&j7¯÷dî?ø莾Ÿ¯Š>#ßA©|F×®¥Â÷lÇB{q@½Q@Q@Q@Q@{÷ìÐ÷¼F›ŸìãÈ!„9ßÏ×?~•à5í¿³mûÇâmgNÝû¹¬Ör¾èáAÿ?Ȇ€>’¯”~?i±Ø|My£?}¶Ò+†?wù£ÿ?Úuõu|»ûEÊ’|D³T`Z=25p?„ù’œÀƒøБQE?QE?QE?QE?QEè?ŠÂÚу l‰öç±ò\çô¢µÿ?g›Hn>$K,©¹í´ùeˆÿ?u‹"gòvôî£xšv™w}"–Kh^f© ?ʾ¸”Ïs,Ä`Èå°;dæ¾÷¸….m¥‚E’!FV‚+૸VÞòxA"Ç# p0ŒÐ4QE?QE?QE?QE?ÑxÅø?ÆÊe¢‰ö΃øân}qÈ÷¹Ú(ï›{˜nbº‚E’ PH’)ᔌ‚? ø£ÇzáñŽ5PI¾)nXBßôÍ~Tÿ?Ç@®ÇÂÿ?ot_‡º—†îä•mÚ-:à˜÷nz($©öÇ¥ye?QE?QE?QE?QW46çYÕí4ÛD/qu*Ťãò n.,n^Úî 9«ý C_Yøÿ?àöã4‚ê£g©ÛÛˆV]€¬À—xëǨõïY~ýžü9¦\Ásª]ÜêrG‚a`#…¸‘ퟮh¯Àͤi²x¦ô²Í¨CåÛÅéàwv*1ì=ø+Ùá†+xc†Ö8£P¨ˆ0?°¢€_xËM‡Gñ¦³§[“äÛ^Inë´1Å}Åšø¿â‹Dß¼BaR«ö¶ïn?žh‘¢Š(?¢Š(?¢Š(?¢Š(?¢Š(?¢Ÿ2\M0ÆÒK#DA’Äœ?sO¸´¹³uK›y`fP겡RTô#=¨(¢€ (¢€ (¢€ ÷/Ùã s©Ýx¦å?sj ½®GYù˜}ãþ}+ÅôÝ:ëVÔôû(Zk›‰qÆ£’M}¹á]ßÂÞÓôk`6ÛD˜õfüX“øÐÍ™£4?´Qš(?¯Ž¾2[_Šúê*lV’9?õÝ2kìJùoö†ÓŸÄ(oy¶HìOMÊY0?SøÐ’ÑE?QE?QE?QE?QEéÿ?´;Mgâ"Ív >Ý®âLõ2ªŸÃv~ Víùø`²KN= –_þµ`üÕ¤Òþ(iªƒ)zÖAþËÕTþØ~ÒvÖ)hw1‚/å‚D”烰ÙÇ®YèÃh¢Š?(¢Š?(¢Š?õÏÙãKŽ÷Ç·²®~Ãf͈\ÿ?ß%¿:úŽ¾yýš-·^xŠè¹ƒõ.Oþ‚+èj?(¢’€ŠJ(kÄ?i-0ËáÝSTè÷-7|:ä~'ë^ß^CûE´ƒá횢’‡Ry‡—'_ÇòõQ@Q@Q@Q@Q@»û?iZUç$½½»E¾´Œµ©82g÷ÚO|ö®§öŒðÍÄöú‰amÐ۲Ιû œ«Ä ñ/ jSi.Ò/íÙ„ÝÆ~^¤n?Ä?ú7ö…¼û?È ææþ4À=@Woý”PË4QE?QE?QE?} û4H†ÇÄQŒy‚Xý|#^ó_9þÍS0ÖuøAùZÞ'#Ü3ÿ?¡ú2€ (¢€ (¢€ óŽ±Ç'Â@¼ªŒ’ÂÑ‚@Þ|À0?Oá]Ö³«Ùh:EΩ¨L!µ¶Bò9þCÔ“À¦¾Eø‹ñ+Rñö ¢Eû6™oh§8=71îØünù?â(¢Š?(¢Š?(¢Š?(¢Š?(¢Š?î>XYê_tXoOȲ4ȸẃø® úãvˆu¯†wÍošÅÒí;/ ÿ?Ž³Â¾aðf¦tohº€ˆo#,uÜÈšû…ÑdFGPÊÃE?|E}k?ÀŸÏz÷a¹Œ;î1GrÁ°@üjàø7àx,. ¶ÑbIf…âY¤w•£Ü1¹w‚:ƒÚ€>>¢¬ê63izÖŸr»gµ™áz2’òªÔ?QEÙ|0ñrx3ÆöºÁae*›{¼Ÿ-»ãØ…?…}“Ñ\AðȲE"‡GSÊFA¸¯+ëO‚>)‹_𔓫_iƒìÒ&~mƒýYǦÜø  K¢Š(?¢Š(ÿhß›mLÐ"|5܆â`ð' Õ‰?ðùƵ¼Câ]_ÅZˆ¿ÖoæáPF¬T(U?É5“@Q@Q@Q@Q@Q@¼—~!Ómá]ÒËu õ%À÷u|Áð#À³ë$O]ÆWNÓŸ1ÿ?-fÇö\ç>¸÷¯¨((¥®âGÄ›?éjB¥Î©>E½®ìÀÛ¸QúôÈ?ð:U¾™ñ.Ym€Q{mÌŠ;9,§óÚã^cZ:æ·â-fçUÔ§3]\6ænÃÐØÀ@Q@u?üisàoCªD†[vUÌ ãÌŒ‘œ{Œ>•ËQ@wèºÕ‡ˆ4›}OM¸Yíg]ÈÊ0}èGj¿_,|ñ¤Ú‹cÐî$'NÕË OÍ•‡×ô¯ª((¥¢€>?¢Š(?¢Š(?¢Š(?¢Š(?¢Šö‚¿bñÂG®@$Ócb¶ÖÎ8‡VoöGLw?N@<ãþñ'Š²Ú>“qsm¦lmŒ÷Ž{—ƒ¿gÍ6Å"»ñEÁ¾¹ý–V>„ýæýÖ½¢ÞÚHxc†XãPª£ÐÒ¥ mmmìmc¶µ‚8 ŒmHâ@ª£ÐÀ©ih íwY´ðö‡y«_8KkXŒŽs‚}{“€=Í|Kâ-vïÄÞ ½Ö/ˆ7R tQÐ(ö??>•ì_´/~Ñy„lß÷pžðƒÕÈùðwâ=+Âh?¢Š(?¢Š(?¢Š(Kyåµ¹Šâ 9¢pèëÕX‚?ûsÁ~&ƒÅþ°ÖaÚ4x?ÿ?W á—óد‡ëÚgÿ?.—Má‹É¶Ô}±=`9ð ?5´ôµQ@?QE?QE?QE?QE?WÛ_žÞO‡~kP_ÙðŽ€rüsšø–¾µø~o~XÆNM¬ÒÁÿ?£ ?ôª)( ¨n®c³´šêfÛ(Ò9ô?dÔµÄü[ÖÛBøi¬NˆYî"û"óŒyŸ)?€$ýhä]kT¸Öõ»ÝRé‹Mu3JÄŸSœ}J£E?QE?QE?QE?TM%´ñÏ´rÆÁÑÔà«EGE?}·àOÃãØjѺ™\ þ —†íÏ#ØŠ+Åg}gTÐ%|-Ôb⾜0äà4P‡QE?QE?QE?QE?WÒ¿³mÙ êög8ŠôH?àhþÉ_5WÑŸ³Oüuÿ?úø‹ÿ?Aj?÷:(¢€ óòKn¿ëæý ½:¼Çãßü’Û¯úù‡ÿ?B “¨¢Š?(¢Š?(¢Š?(¢Š?(¢Š?Üðn¸|7ã+WÜU-®¤Çüó<8ÿ?¾I¢°è ÿÙ
Warning: imagejpeg() [function.imagejpeg]: Unable to open '/var/www/web60/user_images/thumbnails/Testerin_1215457935.jpg' for writing in /var/www/web60/html/g2g/_functions.php on line 67

Warning: imagejpeg() [function.imagejpeg]: Unable to open '/var/www/web60/user_images/Testerin_1215457935.jpg' for writing in /var/www/web60/html/g2g/_functions.php on line 71

das kommt, wenn ich deinen Code einfüge. . . hier:

PHP:
...
        $dstImg = createImage(ImageCreateFromJPEG($srcFilepath), 200, 250,$srcImg_info);
		Header('Content-Type: image/png');
Imagejpeg($dstImg);  
        Imagejpeg($dstImg, $thumbDir.'/'.$filename, 72);
        ImageDestroy($dstImg);
...
 
Warning: Cannot modify header information - headers already sent by (output started at /var/www/web60/html/g2g/user_online_boxes.php:88) in /var/www/web60/html/g2g/_functions.php on line 65
Vor der Benutzung der header()-Funktion sollten keine Rückgaben stattfinden. Also zeig uns, was vor dem $dstImg = ... steht.


Warning: imagejpeg() [function.imagejpeg]: Unable to open '/var/www/web60/user_images/thumbnails/Testerin_1215457935.jpg' for writing in /var/www/web60/html/g2g/_functions.php on line 67
Mangel an Rechten :p


Und außerdem meinte Da_Chris wahrscheinlich, dass du das Bild direkt ausgeben lassen und die Zeile
Code:
Imagejpeg($dstImg, $thumbDir.'/'.$filename, 72);
ausquotieren solltest.
 
Zuletzt bearbeitet:
kann vom provider aus da nich ne einschränkung seindenn flashfxp sagt mir chmod ist 777
 
Sorry für meinen Doppelpost. . .

Aber ich hab den Fehler mehr oder weniger behoben. Zumindestens bekomme ich keine Fehlermeldung mehr, dafür lädt er die Bilder nicht hoch. Hier noch mal die beiden Funktionen, die den Upload ermöglichen soll(t)en:

PHP:
    function createImage( $srcImg, $width, $height, $srcImg_info)
    {
        if( !is_resource($srcImg) || get_resource_type($srcImg) != 'gd' || !is_array($srcImg_info) ) {
            return false;
        }
        $dstImg = imagecreatetruecolor($width, $height);
        imagecopyresampled($dstImg, $srcImg, 0, 0, 0, 0, $width, $height, $srcImg_info[0], $srcImg_info[1]);
        return $dstImg;
    }

    function upload_picture( $srcFilepath, $nick )
    {

        if( !file_exists($srcFilepath) || !is_readable($srcFilepath) ) {
            return false;
        }

        $filename = $nick.'_'.time().'.jpg';
        $imgDir = "/var/www/web60/html/g2g/user_images";
        $thumbDir = "/var/www/web60/html/g2g/user_images/thumbnails";
        $srcImg_info = getimagesize($srcFilepath);

        $dstImg = createImage(ImageCreateFromJPEG($srcFilepath), 200, 250,$srcImg_info);
		//Header('Content-Type: image/png');
		//Imagejpeg($dstImg);  
        Imagejpeg($dstImg, $thumbDir.'/'.$filename, 72);
        ImageDestroy($dstImg);

        $dstImg = createImage(ImageCreateFromJPEG($srcFilepath), 640, 480,$srcImg_info);
        Imagejpeg($dstImg, $imgDir.'/'.$filename, 72);
        ImageDestroy($dstImg);
    }

Danke für eure Hilfe
 
Hi,
ich verstehe die Logik nicht, die da hinter steckt (falls überhaupt eine existieren sollte).
Außerdem sehe ich gar nicht, von wo das Bild nun eigentlich kommen soll. Der erste Parameter von der upload_picture-Funktion, übergibt ja scheinbar einen Pfad, der auf dem Server liegt.
Ich glaube, dass du dir ganz dringend noch einmal die Beispiele in der Referenz anschauen solltest, denn das was du da so hingebogen hast sieht echt nach nichts aus.
 
EDIT: ES GEHT DOCH ! ! !

Ich musste den Ordner nur Aktualisieren!!

Danke für eure Hilfe
 
Zuletzt bearbeitet:
Ich würde dir trotzdem empfehlen das Skript zu benutzen:
PHP:
<?php
/*------------------------------------------------------------------------------*\
|--- Konstanten definieren ------------------------------------------------------|
\*------------------------------------------------------------------------------*/
define("UPL_DIR_IMAGE",  "images");              // Relativ von der Ausführung!
define("UPL_DIR_THUMB",  "thumbs");              // "


/*------------------------------------------------------------------------------*\
|--- Ausführung -----------------------------------------------------------------|
\*------------------------------------------------------------------------------*/
echo <<< EOT
<html>
  <head>
    <title>Minimalbeispiel mit eigenen Funktionen zum Dateiupload</title>
  </head>
  <body>
    <h1>Dateiupload</h1>

EOT;

if(!$_FILES["Datei"])
  echo <<< __EOT
    <h2>Datei ausw&auml;hlen...</h2>
    <form action="#" method="post" enctype="multipart/form-data">
      <table>
        <tr>
          <td>Name</td>
          <td><input type="text" name="Name" /></td>
        </tr>
        <tr>
          <td>Datei</td>
          <td><input type="file" name="Datei" /></td>
        </tr>
        <tr>
          <td></td>
          <td><input type="submit" name="Senden" /></td>
        </tr>
      </table>
    </form>

__EOT;
else
  if(($Ausgabe = datei_hochladen($_FILES["Datei"], $_POST["Name"])) === true)
    echo("    <h2>Datei hochgeladen...</h2>\n".
         "    Die Datei wurde erfolgreich hochgeladen!");
  else
    echo("    <h2>Upload fehlgeschlagen...</h2>\n".
         "    ".$Ausgabe);


echo <<< EOT
  </body>
</html>

EOT;


/*------------------------------------------------------------------------------*\
|--- Funktionen -----------------------------------------------------------------|
\*------------------------------------------------------------------------------*/
function datei_hochladen($Quelle, $Name){
  $Bildpfad     = UPL_DIR_IMAGE."/".$Name."_".time().".jpg";
  $Vorschaupfad = UPL_DIR_THUMB."/".$Name."_".time().".jpg";
  
  if(!$Name)
    return "Es wurde kein Name angegeben.";
    
  if(!ereg("^[A-Za-z0-9]+$", $Name))
    return "Es wurden unerlaubte Zeichen im Namen angegeben.";
  
  if(!move_uploaded_file($Quelle["tmp_name"], $Bildpfad))
    return "Konnte Datei nicht hochladen.";
  
  $NeuesBild         = imagecreatetruecolor(640, 480);
  $NeuesBildVorschau = imagecreatetruecolor(200, 250);
  $HochgeladenesBild = imagecreatefromjpeg($Bildpfad);
  
  unlink($Bildpfad);
  
  imagecopyresampled($NeuesBild,         $HochgeladenesBild, 0, 0, 0, 0, 640, 480, imagesx($HochgeladenesBild), imagesy($HochgeladenesBild));
  imagecopyresampled($NeuesBildVorschau, $HochgeladenesBild, 0, 0, 0, 0, 200, 250, imagesx($HochgeladenesBild), imagesy($HochgeladenesBild));
  
  imagejpeg($NeuesBild,         $Bildpfad);
  imagejpeg($NeuesBildVorschau, $Vorschaupfad);
  
  return true;
}
?>
Du kannst das prima erweitern und das solltest du auch (z.B. Dateityp und -größe überprüfen lassen).
 
Zuletzt bearbeitet:
Wollt ich gerade fragen . . . Wie kann ich das am besten machen!? Bildgröße und Typ abfragen - aber das ganze vor dem hochladen!?
 
Zurück