SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 06.02.2006, 00:35:54
jackalone jackalone ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 8
Bilder skalieren

Hallo erstmal,
folgendes (bin ein absoluter noob):
Versuche ein kleines script zum auslesen von Bildern aus ordnern und skalierung zu schreiben, das ganze wird nachher in Kombination mit Flash arbeiten...
PHP-Code:
<?php
$verz
='bilder/pics/carribean flowers';
$d=dir($verz);
while(
$datei=$d->read())
  {
  
$info=GetImageSize($verz.'/'.$datei);
    if(
$info[2]==2){
      
$b=$info[0];
      
$h=$info[1];
         
$aB=ImageCreateFromJPEG($verz.'/'.$datei);
          
$nB=imagecreatetruecolor(300,300);
          
imagecopyresampled($nB,$aB,0,0,0,0,300,300,$b,$h);

        
$file='bilder/thumbs/carribean flowers/'.$datei;
        
$stat=imageJPEG($nB,$file);
    };
  };
$d->close();
?>
kann mir jemand sagen wieso diese Funktion immer nur ein Bild (das erste) des Ordners skaliert? (das auslesen funktioniert problemlos und auch das Skalieren eines (1) Bildes);

herzlichen Dank
Mit Zitat antworten
  #2  
Alt 06.02.2006, 14:42:23
BigManu BigManu ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 17
AW: Bilder skalieren

Hi,

wenn nur ein Bild skalliert wird, wird wohl auch die Schleife nur einmal laufen. Demnach muss das zweite Bild was er erwischt durch die abfrage
PHP-Code:
if(info[2] == 2
fallen!

lass dir aber zur sicherheit mal ein $i und ein $j ausgeben. das i lässt du vor der if-abfrage zählen und das $j innerhalb der if-abfrage und dann lässt du dir am ende ausgeben, wie oft $i und $j hochgezählt wurden.

also vor die while-schleife:
PHP-Code:
$i 0;
$j 0;

while(...)
{
$i++;
if(...)
{
$j++;
}
}

print
' Vor IF: '.$i.' / Nach IF: '.$j.' '
Dann kannst du dich gerne nochmal hier melden!

Geändert von BigManu (06.02.2006 um 14:43:09 Uhr)
Mit Zitat antworten
  #3  
Alt 06.02.2006, 15:17:00
jackalone jackalone ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 8
AW: Bilder skalieren

Ne, das isses nicht...

...wenn ich mir nur die Dateinamen ausgeben lassen funktioniert ja alles prima (wenn ich die Bildgenerierung durch
PHP-Code:
echo $datei.'<br>'
ersetze z.B.)

kann es sein das das Skalieren zu lange dauert und darum die Schleife Unterbricht?

{übrigens hat diese if-abfrage ja nichts mit der Schleife selbst zu tun}

Geändert von jackalone (06.02.2006 um 15:18:51 Uhr)
Mit Zitat antworten
  #4  
Alt 06.02.2006, 15:26:09
BigManu BigManu ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 17
AW: Bilder skalieren

naja, es geht mir dabei ja auch nicht unbedingt um die schleife. ich glaube nicht, dass es an der länge der skallierung dauert!

wenn du das mal ausführen würdest, könnte ich dir vllt. weiter helfen. das an der schleife an sich nix falsch ist, ist klar, nur bleibt er evtl. an der if-abfrage hängen. oder es gibt während der skallierung einen fehler, der den abbruch der schleife hervorruft...

Geändert von BigManu (08.02.2006 um 07:57:40 Uhr)
Mit Zitat antworten
  #5  
Alt 06.02.2006, 15:53:51
jackalone jackalone ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 8
AW: Bilder skalieren

ok wenn die skalierung drinn ist bekomm ich gar keine ausgabe! (nicht einmal $i=0)
Mit Zitat antworten
  #6  
Alt 06.02.2006, 17:38:10
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Bilder skalieren

Hast du error_reporting auf E_ALL gesetzt und display_errors aktiviert?
Mit Zitat antworten
  #7  
Alt 06.02.2006, 20:30:02
jackalone jackalone ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 8
AW: Bilder skalieren

ou stimmt ja ich hatte die error reports ausgeschalten... *schäm*

PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors'1);
$verz='bilder/pics/carribean flowers';
$d=dir($verz);
$i=0;
$j=0;
while(
$datei=$d->read())
  {
  
$info=GetImageSize($verz.'/'.$datei);
  
$i++;
    if(
$info[2]==2){
      
$j++;
      
$b=$info[0];
      
$h=$info[1];
        
$aB=ImageCreateFromJPEG($verz.'/'.$datei);
          
$nB=imagecreatetruecolor(300,300);
          
imagecopyresampled($nB,$aB,0,0,0,0,300,300,$b,$h);

        
$file='bilder/thumbs/carribean flowers/'.$datei;
        
$stat=imageJPEG($nB,$file);
    };
  };
$d->close();
echo 
'i: '.$i.' j: '.$j;
?>
Fehlermeldung:

Zitat:
Warning: getimagesize(bilder/pics/carribean flowers/.) [function.getimagesize]: failed to open stream: Permission denied in D:\Programme\Apache Group\Apache2\htdocs\phps\TMPce0meua5y4.php on line 10

Warning: getimagesize(bilder/pics/carribean flowers/..) [function.getimagesize]: failed to open stream: Permission denied in D:\Programme\Apache Group\Apache2\htdocs\phps\TMPce0meua5y4.php on line 10

Fatal error: Maximum execution time of 30 seconds exceeded in D:\Programme\Apache Group\Apache2\htdocs\phps\TMPce0meua5y4.php on line 16
heisst das ich muss zuvor chmod rechte vergeben?
Mit Zitat antworten
  #8  
Alt 06.02.2006, 20:49:48
Giz Giz ist offline
Junior Member
 
Registriert seit: Apr 2005
Beiträge: 309
AW: Bilder skalieren

Heißt meiner Meinung nach, dass Du ".." und "." versuchst als Dateien zu lesen, da es sich aber nicht um Dateien handelt gibt es einen Fehler??!
Versuch doch mal das ganze nur auszuführen, wenn $datei!="." und $datei!=".." !
Mit Zitat antworten
  #9  
Alt 06.02.2006, 22:13:45
jackalone jackalone ist offline
Anfänger
 
Registriert seit: Feb 2006
Beiträge: 8
AW: Bilder skalieren

aaaahhhh und natürlich habe ich beim reinen ausgeben der Dateien per echo nicht gesehen das die ersten 2 nicht funktioniert haben da ich den error_report unterdrückt hatte (damn!)... herzlichen dank!

ich habe aber immer noch das problem der Zeitüberschreitung...

Zitat:
Fatal error: Maximum execution time of 30 seconds exceeded in D:\Programme\Apache Group\Apache2\htdocs\phps\TMPg7ejduaaw6.php on line 18
Mit Zitat antworten
  #10  
Alt 06.02.2006, 23:40:33
Giz Giz ist offline
Junior Member
 
Registriert seit: Apr 2005
Beiträge: 309
AW: Bilder skalieren

Hast Du die Prüfung ob ".." oder "." für die gesamte Schleife laufen oder nur für
PHP-Code:
$info=GetImageSize($verz.'/'.$datei); 
?
Du musst mindestens auch bei
PHP-Code:
$aB=ImageCreateFromJPEG($verz.'/'.$datei); 
diese Prüfung durchführen, also die WHILE-Schleife am Besten mit dieser Prüfung koppeln - wozu soll sonst auch überhaupt irgendwas erstellt werden?!
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bilder darstellen schickimicky PHP Grundlagen 5 12.01.2006 15:49:06
Bilder aus dem Server in Tabellen anzeigen shehrazade PHP Grundlagen 7 10.10.2005 15:23:44
Bilder aus einem Verzeichnis holen hoschy PHP Grundlagen 3 20.12.2004 16:38:54
Bilder Problem Adromir PHP für Fortgeschrittene und Experten 3 06.04.2004 10:49:18
bilder + cache schokokuss PHP für Fortgeschrittene und Experten 3 16.07.2002 23:50:16


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:41:37 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt