EDIT: Problème résolu: Stupide petit twit que je suis, j'avais négligé de donner un nom au fichier. $ testSiteDir était un chemin sans nom de fichier. Comment un fichier peut-il être enregistré sans nom! D'Oh! désolé;)créer des images miniatures avec des autorisations d'écriture php
Je sais qu'il ya beaucoup de questions semblables autour et je l'ai lu à travers eux, mais depuis que je suis en quelque sorte dû construire un hybride de tous les tutoriels et les articles que j'ai quelques-uns code que j'espérais travailler mais ne le fait pas.
A un moment donné, j'ai réussi à créer des copies des images dans le dossier que je voulais en utilisant la fonction copy() pour le déplacer, ce qui a fonctionné. Mais depuis que je veux redimensionner je dois utiliser GD (pour autant que je peux dire)
voici mon code:
if (is_dir($BooksDir)) {
if ($dh = opendir($BooksDir)) {
while (($folder = readdir($dh)) !== false) {
$count++;
$exclude = array('.','..','etc.');
if (!in_array($folder, $exclude)){
echo '<div ' . ($count&1 ? 'class="oddrow"' : 'class="evenrow"') . '>';
echo $folder . "<br/>" . $count;
$subDir = $BooksDir . '/' . $folder;
$filesnfolders = scandir($subDir);
foreach ($filesnfolders as $file) {
$ext = pathinfo($file, PATHINFO_EXTENSION);
if ($ext == 'jpg' || $ext == 'jpeg' || $ext == 'png' || $ext == 'gif') {
if ($ext == 'jpg' || $ext == 'jpeg') {
$origimg = imagecreatefromjpeg($subDir. '/' . $file);
$thHeight = 100;
$thWidth = 100;
$mainWidth = imagesx($origimg);
$mainHeight = imagesy($origimg);
$myThumbnail = imagecreatetruecolor($thWidth, $thHeight);
imagecopyresampled($myThumbnail, $origimg, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $mainWidth, $mainHeight);
imagejpeg($myThumbnail, $testSiteDir);
}
}
}
echo '</div>';
}
}
closedir($dh);
}
}
Quand j'essayer d'utiliser ce qui précède je reçois l'erreur que je n'ai pas la permission d'écrire dans ce dossier: Impossible d'ouvrir 'C:/xampp/htdocs/test' pour écrire: Permission refusée dans ...
J'ai trois manuels et je lis beaucoup d'articles sur les images et php, je n'ai vu nulle part où il me dit quoi faire
Est-ce que 'C:/xampp/htdocs/test' est en lecture seule? – Palladium
J'ai essayé de le changer avec rightclick-> properties-> désélectionner readonly mais cela n'a pas fait la différence, j'ai aussi essayé de changer le propriétaire du dossier mais cela n'a pas aidé non plus –