Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1467 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Créer une miniature

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Créer une miniature

n°1315576
Siron
Posté le 28-02-2006 à 18:52:05  profilanswer
 

Bonjours, je suis en train de faire un script pour créer une miniature a partir d'une image présente sur le serveur.
 
Voici le bout de code :
 

Citation :

      $scr = './album/' . $name;
      $width = $infos_img[0];
      $height = $infos_img[1];
 
      while (($width > 300) and ($height > 200)) //Redimension
      {
          $height = ($height/10)*9;
          $width = ($width/10)*9;
      } // Fin redimension
 
      if ($infos_img[2] == 2) {$dest = imagecreatefromjpeg('./miniature/min_' . $name);}
      if ($infos_omg[2] == 3) {$dest = imagecreatefrompng('./miniature/min_' . $name);}
 
      $min = imagecopyresampled($dest, $src, 0, 0, 0, 0, $width, $height, $infos_img[0], $infos_img[1]);


 
 
Le script ne marche pas, je sais que j'utilise mal les paramètre.
 
J'aimerais donc que quelqu'un m'explique en imagé a quoi sert la fonction imagecreatefromjpg, parceque je ne suis pas sur de la situer avec ce que j'ai trouvé sur internet ou dans un livre.
 
Merci.
 
Siron


Message édité par Siron le 28-02-2006 à 18:53:23
mood
Publicité
Posté le 28-02-2006 à 18:52:05  profilanswer
 

n°1315583
zapan666
Tout est relatif
Posté le 28-02-2006 à 18:57:57  profilanswer
 

ça créé un objet image à partir d'une autre image

n°1315586
Siron
Posté le 28-02-2006 à 19:03:02  profilanswer
 

Un objet ? Une image virtuel en quelque sorte (non présente physiquement sur le dd) ?

n°1315588
newneo2001
Posté le 28-02-2006 à 19:06:43  profilanswer
 

j'en ai également besoin de ça sur mes sites et j'avais trouvé ce site
 
http://www.asp-php.net/scripts/asp [...] php?page=2
 
la 2e leçon est très pratique car tu peux recréer tes images en diminuant le poids des images
 
En espérant que ce lien t'aide autant qu'il m'a aidé.
 
PS : ah oui il y avait un problème ac  $dst_im = ImageCreate($dst_w,$dst_h);
 
je te conseille d'utiliser plutôt ImageCreateTrueColor qui te permettra d'avoir des images de + de 256 couleurs. Sinon ca passera mal.
 
Bonne chance

n°1315733
Siron
Posté le 28-02-2006 à 23:18:37  profilanswer
 

Citation :

     if ($sql_image) // test de l'operation mysql
      {
      $width = $infos_img[0];
      $height = $infos_img[1];  
      while (($width > 300) or ($height > 200)) //Redimension
      {
      $height = ($height/10)*9;
      $width = ($width/10)*9;
      } // Fin redimension
      $dest = imagecreatetruecolor($width, $height);
      if ($infos_img[2] == 2) {$src = imagecreatefromjpeg('./album/' . $name);}
      if ($infos_omg[2] == 3) {$src = imagecreatefrompng('./album/' . $name);}
      $min = imagecopyresampled($dest, $src, 0, 0, 0, 0, $width, $height, $infos_img[0], $infos_img[1]);
      if ($infos_img[2] == 2) {imagejpeg($dest , './miniature/min_' . $name, 100);}
      if ($infos_omg[2] == 3) {imagepng($dest , './miniature/min_' . $name);}
      imagedestroy($dest);  
         imagedestroy($src);


 
Comme ça, ça fonctionne, je me suis inspiré de ton lien newneo2001 pour comprendre le principe de manipulation d'image en php.
 
Sinon j'ai deux autres questions :
move_uploaded_file est bien sencé renvoyer un boolean ?  Parceque quand l'opération réussi chez moi, elle renvoit 1.
Dans une requete sql faite a partir de php comme mysql_query('SELECT * FROM $toto ....
Peut-on mettre la variable php qui désigne la table comme je l'ai fait ?  Ou faut-il faire FROM ' . $toto . '.... ?
 
Merci pour l'aide.

n°1315801
newneo2001
Posté le 01-03-2006 à 00:45:47  profilanswer
 

Citation :


Sinon j'ai deux autres questions :
move_uploaded_file est bien sencé renvoyer un boolean ?  Parceque quand l'opération réussi chez moi, elle renvoit 1.


 
http://fr.php.net/manual/fr/functi [...] d-file.php
 
je lis :
bool move_uploaded_file ( string filename, string destination )
 
et
 Si filename est un fichier téléchargé, mais que pour une raison quelconque, il ne peut être déplacé, rien ne se passe, et move_uploaded_file() retourne FALSE. De plus, une alerte sera affichée.
 
Tu as ta réponse, oui c'est bien booléen
 

Citation :


Dans une requete sql faite a partir de php comme mysql_query('SELECT * FROM $toto ....
Peut-on mettre la variable php qui désigne la table comme je l'ai fait ?  Ou faut-il faire FROM ' . $toto . '.... ?


 
Là ca dépend de coment tu parses ta requête. Il faut faire la différence entre simple et double quote
 
simple quote affiche sans parser, double quotes parse.
parser : remplacer les variables par leur contenu
 
en gros si tu fais
$toto = 'matable';
'SELECT * from $toto' ca va te donner SELECT * from $toto
"SELECT * from $toto" ca va te donner SELECT * from matable
 
Comme conseil je peux te dire que simple quote est plus rapide que double quote. Mais bon c'est vraiment invisible sur une page. C'est juste qu'il faut le savoir.
 
Ensuite si tu veux savoir ce que ca donne, n'hésite pas à débugguer
 
$sql = 'SELECT * from $toto';
 
echo $sql;
die;
 
tu verras bien ce que ca donne comme ca ;)
 
Bonne chance

n°1315845
Siron
Posté le 01-03-2006 à 09:18:10  profilanswer
 

J'ai enfin compris une des différences entre le ' et le " lol.
 
Pour move_uploaded_file, j'ai bien vu que c'était une boolean, mais il me renvoit 1 au lieu de true quand ça marche.
Je sais pas pourquoi, c'est pas très embétant mais je dois adapter mes tests de réussites en conséqence.
 
Merci pour l'aide.

n°1315887
newneo2001
Posté le 01-03-2006 à 10:07:39  profilanswer
 

booléen  
 
1 = true
0 = false
 
http://www.manuelphp.com/php/langu [...] oolean.php
 
un petit conseil pour tester tes requetes plus simplement. Tu peux faire

Code :
  1. if (move_uploaded_file()){
  2. // c bon
  3. }
  4. else{
  5. //c pas bon
  6. }


et ca résout tous tes problèmes ;)
 
@++


Message édité par newneo2001 le 01-03-2006 à 10:08:26

---------------
N'oubliez pas de mettre [RESOLU] dans le titre quand c'est fini - Pour poster vos sources : http://paste.clicksources.com/
n°1315898
Siron
Posté le 01-03-2006 à 10:13:18  profilanswer
 

Oui mais j'ai pas mal d'opération en cascade, donc je sais pas si je vais changer vu que grosso modo c'est pareil avec t'a méthode ou la mienne (je passe rarement avec des algo sur papier, et donc je reconnais que parfois c'est le bordel mes codes, même si je m'améliore dans le domaine de l'impro).
 
Sinon, je savais pas que les booleans en php sont sous forme 1 ou 0, ou alors c'est mixtes ?
1 et true pour vrai et 0 et false pour faux ?


Message édité par Siron le 01-03-2006 à 10:15:11
n°1315906
newneo2001
Posté le 01-03-2006 à 10:19:23  profilanswer
 

je dirais plutôt que c'est mixte. Mais là c'est sans affirmation, je me suis jamais posé la question parce que ca ne m'a jamais posé problème.
 
Disons qu'avec ma méthode tu économises une variable. Après c'est vrai qu'il faut voir si tu t'en ressers plus loin de ta variable.


---------------
N'oubliez pas de mettre [RESOLU] dans le titre quand c'est fini - Pour poster vos sources : http://paste.clicksources.com/

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Créer une miniature

 

Sujets relatifs
comment creer une animation video sous flash[ MySQL 4.1 ] Créer une fonction MySQL
Creer et Ecrire et Lire dans un fichier Api WinCréer des numéro de licence
Créer un blog a partir d'un siteAide pour créer un jeu à gratter SVP !!!!
Créer un affichage style graph a partir de fichier ?comment creer les cubes en sqll server 20000
Créer une miniature d'une page WebCréer une miniature à partir d'un BLOB
Plus de sujets relatifs à : Créer une miniature


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR