php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.01.2010, 13:48  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

Ja ich dachte da an Ajax Da aber meine Kenntnisse noch schlechter sind als bei php müsste das schon ein fertiges script sein

Oder jemand von euch hat lust mir mein php script so zu ändern damit es mit 32MB auskommt Natürlich bezahle ich dafür
robydog ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 10.01.2010, 14:25  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
Zitat von robydog Beitrag anzeigen
Ja ich dachte da an Ajax Da aber meine Kenntnisse noch schlechter sind als bei php müsste das schon ein fertiges script sein

Oder jemand von euch hat lust mir mein php script so zu ändern damit es mit 32MB auskommt Natürlich bezahle ich dafür
AJAX ist der völlig falsche Ansatz ... ich glaub du weist nichtmal was hinter AJAX steckt oder ? AJAX ist nichts anderes als asynchrone requests an andere Scripte (PHP oder was auch immer) mit Javascript .... das löst dein Problem nicht.
robo47 ist offline  
Alt 10.01.2010, 14:29  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

Je nach dem

Wenn das file per Java schon auf dem Rechner verkleinert wird löst es das problem doch. Denn dann muss der Server keine Rechneaufgaben mehr lösen sondern nur noch das originale und das verkleinerte hochladen
robydog ist offline  
Alt 10.01.2010, 14:47  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
Zitat von robydog Beitrag anzeigen
Je nach dem

Wenn das file per Java schon auf dem Rechner verkleinert wird löst es das problem doch. Denn dann muss der Server keine Rechneaufgaben mehr lösen sondern nur noch das originale und das verkleinerte hochladen
JAVA != JAVASCRIPT !!!!!!!!!!!

2 total verschiedene Dinge.
robo47 ist offline  
Alt 10.01.2010, 14:52  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.637
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

Mit Javascript und dem Canvas-Objekt wäre dies möglich.

javascript canvas - Google-Suche

Dabei ist zu beachten das das Element <canvas> zum HTML 5 Standard gehört und es somit ggf. Kompatiblitätsprobleme bezüglich mancher Browser geben könnte.
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist offline  
Alt 10.01.2010, 14:52  
Erfahrener Benutzer
 
Registriert seit: 02.03.2008
Beiträge: 351
robydog befindet sich auf einem aufstrebenden Ast
Standard

Ja dann hab ich mich wohl falsch ausgedrückt Sorry

mal ne frage... kann es nur an meinem script sein dass falsch programmiert ist dass es mehr als 32MB braucht oder ist es generell wenn man so grosse dateien verkleinern will dass man mehr als 32MB braucht

ich habe diverse scripts aus dem internet versucht und habe bei allen dasselbe problem
robydog ist offline  
Alt 10.01.2010, 14:59  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Liest du dir eigentlich auch mal gepostete Links durch ?

-> [Grundlagen] GDlib und große Bilder - Developer's Guide

Bilder gewisser Auflösung brauchen eine gewisse Menge RAM, wenn du jetzt noch ein thumbnail davon erstellst, braucht das natürlich auch RAM.
Also entweder deine Bilder sind zu groß oder die Resourcen werden nicht freigegeben ....
robo47 ist offline  
Alt 10.01.2010, 15:38  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.637
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

Zitat:
Zitat von robydog Beitrag anzeigen
Ja dann hab ich mich wohl falsch ausgedrückt Sorry

mal ne frage... kann es nur an meinem script sein dass falsch programmiert ist dass es mehr als 32MB braucht oder ist es generell wenn man so grosse dateien verkleinern will dass man mehr als 32MB braucht

ich habe diverse scripts aus dem internet versucht und habe bei allen dasselbe problem
Ich hab dein Script mal mit einem JPG der Auflösung 5000*5000 getestet.

Bei mir kommt es bereits hier zum Speicherüberlauf:
PHP-Code:
  $altesBild ImageCreateFromJPEG($fullPath); //<--- benötigt zuviel speicher 
D.h. imagedestroy() hat gar keine Chance weil bereits die erste Bildressource zu viel Speicher braucht.

Bei 2500*2500 Pixel Auflösung wird der Fehler hier ausgelöst:

PHP-Code:
  $altesBild ImageCreateFromJPEG($fullPath); 
  
$neuesBild ImageCreateTrueColor($neueBreite,$neueHoehe); //Fehler 
Also direkt bei der zweiten Ressource.

Speicherverbrauch:
Code:
Startverbrauch: 262144
Verbrauch vor $altesBild: 262144
Verbrauch vor $neuesBild: 31719424
De Facto sind also die Bilder einfach zu groß.

Du hast nun folgende Optionen:

- Frag deinen Provider ob er das memory limit erhöht.
- Versuch das memory limit per .htaccess zu erhöhen

Code:
php_value memory_limit 64M
- Versuch das memory limit am Scriptanfang zu erhöhen

Code:
ini_set('memory_limit', '64M');
- Such nahc einer anderen Möglichkeit.
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist offline  
Alt 04.02.2010, 02:46  
Erfahrener Benutzer
 
Registriert seit: 19.01.2010
Beiträge: 324
PHP-Kenntnisse:
Anfänger
chunky befindet sich auf einem aufstrebenden Ast
Standard

Ich hatte neulich ebenfalls das out-of-memory problem mit GD.
Eine 2MB-Datei hatte sich bei mir im Speicher auf über 30 MB aufgeplustert.

Wäre es nicht möglich mit dem Zend Memory Manager die imagecreatefromjpeg in das Filesystem auszulagern?
Zend Framework: Documentation: Overview - Zend Framework Manual

Ich weiss nur nicht recht, wie ich das richtig anwenden kann.
Vielleicht so?

PHP-Code:
$backendOptions = array(
    
'cache_dir' => './tmp/'
);
$memoryManager Zend_Memory::factory('File'$backendOptions);
 
//...
$image imagecreatefromjpeg($_FILES[$fileName]['tmp_name']);

$img $memoryManager->create($image); 
und dann weitermachen mit $img...
chunky ist offline  
Alt 03.04.2010, 18:22  
Neuer Benutzer
 
Registriert seit: 02.07.2009
Beiträge: 13
PHP-Kenntnisse:
Anfänger
meli21 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo Leute

Ich habe auch einen Hoster gesucht der mir mehr php_memory_limit einstellen kann. Bei 1und1 habe ich nur kleine 32MB memory_limit gehabt. Der cw-city Hoster hat nur 16MB!
Ich habe dann im Internet gesucht und bin jetzt bei menkiSys Networks - Webspace - Webradio - Domains - Videostreaming - Home. Die haben das Platinum-Paket und dieses hat 256MB php_memory_limit. Seit dem funktioniert mein Browsergame perfekt.

lg
meli21
meli21 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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
Workaround um shared memory Bug zu umgehen Plague PHP-Fortgeschrittene 6 06.01.2010 23:45
Fehler beim kompilieren von php 5.2.9 malio Server, Hosting und Workstations 11 05.06.2009 18:40
Memory Size - Trotz Umstellung Fehler! MaxDittmann PHP Tipps 2009 4 08.02.2009 00:33
Verzeichnis auslesen Manko10 Wiki Diskussionsforum 15 26.10.2008 21:43
Größe von Memory (Heap) Tabellen R4v3r Datenbanken 1 22.08.2007 17:11
[Erledigt] not allowed to connect to this MySQL server PHP Tipps 2005-2 2 23.09.2005 18:34
Shared Memory PHP-Fortgeschrittene 9 04.09.2005 15:45
Memory exhausted PHP Tipps 2005-2 2 29.08.2005 19:47
[Erledigt] Fatal error: Allowed memory size... PHP Tipps 2005-2 5 07.07.2005 13:01
Allowed Memory Size exhausted bicpi PHP-Fortgeschrittene 16 20.04.2005 00:28
different size in shared object, consider re-linking!? Heart Datenbanken 1 09.03.2005 15:42
Fatal error: Allowed memory size of 8192 bytes exhausted at PHP Tipps 2005 11 06.03.2005 19:26
[Erledigt] imagecreatetruecolor memory size PHP-Fortgeschrittene 2 10.09.2004 17:52
Fatal error: Allowed memory size of PHP Tipps 2004 4 04.09.2004 17:50
[Erledigt] Memory Problem mit gd PHP-Fortgeschrittene 1 25.06.2004 18:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
1und1 memory limit erhöhen, php out of memory 1und1 imagecreatefromjpeg, zend_memory tutorial, memory 1und1, memory size 1und1, out of memory 1und1, memory erhöhen 1und1, 1und1 memory size, http://www.php.de/php-einsteiger/63188-allowed-memory-size-3.html, fatal error: out of memory (allocated 31195136) (tried to allocate 8192 bytes) in, php gd große bilder memory_limit, fatal error: allowed memory size of 1und1, 1und1 memory_limit, imagecreatefromjpeg 1&1 große bilder, 1und1 out of memory, 1&1 memory size, zend framework memory problem, 1&1 memory_limit, fatal error out of memory 1und1, javascript memory size

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:55 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