2010-03-05 13 views
0

J'essaie d'utiliser ce générateur de miniatures php http://phpthumb.gxdlabs.com/ et je continue d'obtenir l'erreur ci-dessous.Script PHP ne donnant pas une telle erreur de fichier ou de répertoire

Warning: imagejpeg() [function.imagejpeg]: Unable to open 'Images/uploaded/thumbnails/' for writing: No such file or directory in D:\Data\Websites\wamp\www\StephsSite\PHP\phpThumb\GdThumb.inc.php on line 672 

Voici mon scénario

<?php 
     require_once 'PHP/phpThumb/ThumbLib.inc.php'; 

     $options = array('jpegQuality' => 80, 'preserveAlpha' => true); 

     try { 
      $thumb = PhpThumbFactory::create('Images/Drew.jpg', $options); 
     } 
     catch (Exception $e) { 
      echo "problems..."; 
     } 

     $thumb->adaptiveResize(200,200)->save('Images/uploaded/thumbnails/'); 
?> 

et voici quelques-unes de ma structure de fichiers testThumb.php/Images/uploadés/vignettes

+0

Je ne sais pas si cela va aider, mais je toujours tendance à avoir des problèmes en utilisant des chemins relatifs avec PHP-GD, je dois toujours préciser tout en utilisant un chemin absolu. – animuson

Répondre

2

Désolé, je dois demander: est-ce que le répertoire Images/uploaded/thumbnails/ existe? En second lieu, l'erreur semble également indiquer qu'il essaie d'ouvrir le répertoire pour l'écriture. Êtes-vous sûr que save n'a pas besoin d'un nom de fichier?

En fait, je pense que oui. De this page:

Enregistrement d'images: La sauvegarde d'images est assez facile. Vous n'avez qu'à passer le chemin complet à l'endroit où vous souhaitez enregistrer l'image (y compris le nom du fichier) la fonction de sauvegarde.

Alors, je voudrais essayer quelque chose comme:

<?php 
    require_once 'PHP/phpThumb/ThumbLib.inc.php'; 
    $options = array('jpegQuality' => 80, 'preserveAlpha' => true); 
    try { 
     $thumb = PhpThumbFactory::create('Images/Drew.jpg', $options); 
    } catch (Exception $e) { 
     echo "problems..."; 
    } 
    $thumb->adaptiveResize(200,200)->save('Images/uploaded/thumbnails/Drew.jpg'); 
?> 
+0

Oui. J'ai vérifié comme 6 fois juste pour m'assurer – Catfish

+0

@Catfish, pourriez-vous vérifier encore une fois? Non, je plaisante :-) Voir la mise à jour, les documents en ligne semblent indiquer que vous avez besoin du nom de fichier complet, pas seulement le chemin. – paxdiablo

+0

C'est parce que je n'avais pas de nouveau nom de fichier. Je n'avais que Images/upload/thumbnails quand j'avais besoin de quelque chose comme Images/uploaded/thumbnails/new_name.jpg. Merci de m'avoir renvoyé à la documentation à nouveau, donc j'ai remarqué ça. – Catfish

0

Je suppose que vous voudrez peut-être changer le chemin de style de Windows , avec des antislashs au lieu des barres obliques. En outre, puisque ce fichier sera écrit par l'utilisateur Apache (c'est comment cela fonctionne dans * nix, pas sûr de Windows), vous devrez peut-être écrire ce monde du répertoire et voir si cela fonctionne.

+0

D'après ce que j'ai lu, dans Windows, vous ne définissez pas le CHMOD comme dans unix. Im juste essayer ceci sur mon localhost en utilisant WAMPServer2 – Catfish

+0

Vrai, mais même dans Windows, si vous faites un clic droit sur un répertoire, il montrerait des permissions. Vous pourriez vouloir essayer. – s1d