Création et redimension d'une photo.

Kosomot
Invité n'ayant pas de compte PHPfrance

13 août 2007, 20:55

Bonjour tout le monde,

Je cré un site contenant un album photo avec biensûr une page php "creer_photo". Cette page récupère donc l'image, la stocke sur mon serveur ftp ( j'ai vérifié sur le ftp ) mais le redimension ne s'effectue pas. Ma librairie GD2 est bien active. Voici le code :
<?php
			if(isset($_FILES['photo']['name']))
				{
					$extensions_valides = array( 'jpg' , 'jpeg');
					$extension_upload = substr(  strrchr(strtolower($_FILES['photo']['name']), '.')  ,1);
					if (in_array($extension_upload,$extensions_valides))
					{
						$nom = time();
						$mininom = '../images/album/' . $_POST['repertoire'] . '/mini' . str_replace(' ','',$nom) . '.' . $extension_upload;
						$nom = '../images/album/' . $_POST['repertoire'] . '/' . str_replace(' ','',$nom) . '.' . $extension_upload;						
						$resultat = move_uploaded_file($_FILES['photo']['tmp_name'], $nom);
						if($resultat)
						{
							echo $nom . '<br />';
							echo '4...';
							$source = imagecreatefromjpeg($nom);
							echo '3...';
							if(imagesx($source) > imagesy($source))
							{
								$destination = imagecreatetruecolor(100, 75);
							}
							else
							{
								$destination = imagecreatetruecolor(75, 100);
							}
							echo '2...';
							$largeur_source = imagesx($source);
							$hauteur_source = imagesy($source);
							$largeur_destination = imagesx($destination);
							$hauteur_destination = imagesy($destination);
							echo '1...';
							imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);
							imagejpeg($destination, $mininom);
							echo 'Transfert réussi !<br />';
						}
					}
				}
				else
				{
					if($_FILES['photo']['error'] > 0)
					{
						$erreur = "Erreur lors du tranfsert !";
					}
				}
				echo '<a href="ma page '">Retour à l\'album.</a>';
		?>
Comme vous pouvez le constater j'ai mis des marqueurs ( "4...3...2...1..." ) et seul le marqueur "4..." apparait après le chargement de la page, je suppose donc que le problème vient de la fonction "imagecreatefromjpeg" mais je ne vois pas le problème, c'est pourquoi je requiert votre aide, merci d'avance :D .

led
Invité n'ayant pas de compte PHPfrance

14 août 2007, 10:13

Salut,

J'ai eu un souci de ce genre alors peut etre que c'est le meme (ps: je ne me suis pas attardé sur ton code). J'avais le GD activé mais mon serveur ne prennait pas en compte les fonctions jpeg, uniquement les gif...
Pour vérifier, va faire un p'tit tout dans ton phpinfo();

a plus

ViPHP
ViPHP | 5924 Messages

14 août 2007, 14:54

Utilises un error_reporting(E_ALL) pour afficher les erreurs.
Et teste avec des petits fichiers.