Jump to content

dindonroyal

Members
  • Posts

    16
  • Joined

  • Last visited

Profile Information

  • Activity
    User/Merchant

dindonroyal's Achievements

Newbie

Newbie (1/14)

2

Reputation

  1. Bonjour Ideesboutique.com. Merci beaucoup pour ces encouragements ! Tu as raison, il faut que je mette en avant cette description. Merci également pour le partage facebook. Ca m'a d'ailleurs poussé à créer une page dédié à Echo Picture : www.facebook.com/EchoPicture
  2. Bonjour à tous, et encore une fois merci pour toutes ces remarques ! Pour ce qui est du lien, je crois que ça fonctionne correctement maintenant.Pour la ré-écriture d'url, je crois que c'est réglé aussi ! Je vais maintenant essayer d'améliorer la boutique ( plus de descriptions, images plus grande etc.. ) en suivant vos conseils!
  3. Bonjour Madrileño, et merci d'avoir pris le temps de parcourir mon site ! - Pour l' URL rewriting : ok je vais le mettre en place. - Le truc c'est que c'est un bloc constitué d'une seule image, mais je vais essayer de mettre les liens quand même. - Comment faire pour les traduire? Dans le Back Office? - Pour le moteur, je voix pas très bien l'intérêt. Est ce uniquement pour l'utilisateur ou il y a-t-il une autre raison? Parce que je ne vend qu'une seule sorte d'article, je vois mal ce que ça pourrait vraiment apporter en plus ..
  4. Merci beaucoup de cette remarque encourageante ! C'est en rentrant dans les détails qu'il risque d'y avoir des choses a modifier ! C'est ma première expérience en développement de site web, mais je suis sur que je vais en apprendre beaucoup grace à vous !
  5. Bonjour à tous ! Voila, après un mois de développement, mon site web d'e-commerce est enfin en ligne ! Je sais que ce forum regorge de webmasters aguerris, et j'aimerai beaucoup recueillir vos avis ( tant sur la forme que sur le fond ). Et je souhaiterai également savoir si vous comprennez facilement ce que je propose comme produit, je sais pas si c'est évident pour quelqu'un qui débarque sur mon site. Voici pour le lien : www.echopicture.fr Je suis preneur de tout conseil, et je suis conscient qu'il me reste beaucoup de travail ! Cordialement,
  6. Merci beaucoup, je pense que je vais bien m'en sortir comme ça Et hop ! Un problème résolu en moins de 3h par la communauté prestashop ! ^^
  7. Merci de m'avoir répondu si rapidement ! - Très bien pour mettre le site en maintenance, c'est OK. - Est ce que vous pourriez très brièvement m'expliquer les demarches en utilisant les .CVS ?
  8. Question subsidiaire : comment empecher mon site d'etre accesseible tant que tout ne fonctionne pas parfaitement ? Via le BO ? Est ce suffisant en terme de sécurité ? Merci bien pour toute réponse que vous pourrez m'apporter ^^
  9. Bonjour à tous ! Après un mois passé à développer ma boutique en local, je viens enfin de franchir le pas ! Je viens de faire héberger ma boutique (sur PHPNET), et ça y est, elle est en ligne. Cependant, j'ai (encore) quelques soucis. Le problème est que pour toutes mes pages, mes images ne sont pas visibles ! Ce qui est normal : les liens de ces images sont de la forme "http://localhost/prestashop/img/...." au lieu de ... ce qu'il faudrait. Existe-t-il un moyen de changer facilement tous ces liens? Et j'ai le même problème pour d'autre lien, par exemple dans mon menu horizontal... Bref, ma question est : dois-je obligatoirement modifier un a un tous les liens qui pointent vers des images ou d'autres pages? Bien Cordialement,
  10. Bonjour, Tout d'abord, je précise que je débute tout juste avec prestashop, donc mes conseils ne seront certainement pas les plus avisés. Si tu veux simplement changer les type de fichiers que le client peut uploader, tu peux le faire en modifiant quelques fichiers. J'avais eu le même problème (je voulais permettre l'upload de mp3), j'ai eu ma réponse ici : http://www.prestashop.com/forums/topic/176763-resolu-permettre-aux-clients-lupload-de-son-mp3-wma/ En espérant t'avoir un peu aidé ...
  11. Merci de ta réponce. C'est vrai que c'est certainement pas la méthode idéale. Je vais regarder le module que tu me proposes, c'est possible qu'il me convienne très bien. Merci de tes conseils avisés
  12. typiac : J'espère que tu as trouvé une solution depuis ton dernier post, mais au cas ou ça intéresse d'autres personnes, je te réponds quand même. J'en suis pas certain, mais il me semble que le Mime type que tu utilises pour tes fichier n'est pas le bon. Par exemple, pour cr2, c'est 'image/x-raw' et pas 'image/cr2'. Essaye donc de corriger ça dans ton fichier images.inc.php !
  13. Je viens de me rendre compte que les MIME type pour les mp3 ne sont pas ceux que j'ai mis. J'ai donc rajouté dans images.inc.php : 'audio/mpeg', 'audio/mpeg3', 'audio/x-mpeg-3', 'video/mpeg', 'video/x-mpeg', ici : function isPicture($file, $types = NULL) { /* Detect mime content type */ $mimeType = false; if (!$types) $types = array('image/gif', 'image/jpg', 'image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'application/pdf', 'application/acrobat', 'application/nappdf', 'application/x-pdf', 'application/vnd.pdf', 'text/pdf', 'text/x-pdf', 'multipart/x-mp3', 'application/mp3', 'application/x-mp3-compressed', 'application/x-mp3', 'audio/mpeg3', 'audio/mpeg', 'audio/x-mpeg-3', 'video/mpeg', 'video/x-mpeg', 'application/illustrator', 'application/photoshop', 'application/psd', 'application/x-photoshop', 'image/photoshop', 'image/psd', 'image/x-photoshop', 'image/x-psd', 'image/vnd.adobe.photoshop', 'application/octet-stream'); Et... ca fonctionne !!! Avis à ceux à qui ça pourrait servir ^^ !
  14. Alors, je vais vous présenter les modification que j'ai faites. Je parts de la version permettant de télécharger des zip et pdf (qui fonctionne), et je vous présente les modification à partir de cette version la. Alors, on commence par le fichier ProductController.php : public function displayContent() { parent::displayContent(); self::$smarty->display(_PS_THEME_DIR_.'product.tpl'); } public function isPDF($file) { $name = $file['name']; $ext = strrchr($name, '.'); //echo '<br />pdf-DEBUG file===><pre>'.print_r($file);echo '</pre><br />DEBUG mimetpye===>'.$ext; if($ext == '.pdf'){ $isPDF = true; }else{ $isPDF = false; } return $isPDF; } public function isMP3($file) { /* Detect mime content type */ $name = $file['name']; $ext = strrchr($name, '.'); //echo '<br />mp3-DEBUG file===><pre>'.print_r($file);echo '</pre><br />DEBUG mimetpye===>'.$ext; if($ext == '.mp3'){ $isMP3 = true; }else{ $isMP3 = false; } return $isMP3; } public function isAI($file){ /* Detect mime content type */ $name = $file['name']; $ext = strrchr($name, '.'); //echo '<br />ai-DEBUG file===><pre>'.print_r($file);echo '</pre><br />DEBUG mimetpye===>'.$ext; if($ext == '.ai'){ $isAI = true; }else{ $isAI = false; } return $isAI; } public function isPSD($file){ /* Detect mime content type */ $name = $file['name']; $ext = strrchr($name, '.'); //echo '<br />psd-DEBUG file===><pre>'.print_r($file);echo '</pre><br />DEBUG mimetpye===>'.$ext; if($ext == '.psd'){ $isPSD = true; }else{ $isPSD = false; } return $isPSD; } public function pictureUpload(Product $product, Cart $cart) { if (!$fieldIds = $this->product->getCustomizationFieldIds()) return false; $authorizedFileFields = array(); foreach ($fieldIds AS $fieldId) if ($fieldId['type'] == _CUSTOMIZE_FILE_) $authorizedFileFields[(int)($fieldId['id_customization_field'])] = 'file'.(int)($fieldId['id_customization_field']); $indexes = array_flip($authorizedFileFields); foreach ($_FILES AS $fieldName => $file) if (in_array($fieldName, $authorizedFileFields) AND isset($file['tmp_name']) AND !empty($file['tmp_name'])) { $fileName = md5(uniqid(rand(), true)); if ($error = checkImage($file, (int)(Configuration::get('PS_PRODUCT_PICTURE_MAX_SIZE')))) $this->errors[] = $error; if ($error OR (!$tmpName = tempnam(_PS_TMP_IMG_DIR_, 'PS') OR !move_uploaded_file($file['tmp_name'], $tmpName))) return false; /*//Original file elseif (!imageResize($tmpName, _PS_UPLOAD_DIR_.$fileName)) $this->errors[] = Tools::displayError('An error occurred during the image upload.'); // A smaller one elseif (!imageResize($tmpName, _PS_UPLOAD_DIR_.$fileName.'_small', (int)(Configuration::get('PS_PRODUCT_PICTURE_WIDTH')), (int)(Configuration::get('PS_PRODUCT_PICTURE_HEIGHT')))) $this->errors[] = Tools::displayError('An error occurred during the image upload.'); elseif (!chmod(_PS_UPLOAD_DIR_.$fileName, 0777) OR !chmod(_PS_UPLOAD_DIR_.$fileName.'_small', 0777)) $this->errors[] = Tools::displayError('An error occurred during the image upload.'); else $cart->addPictureToProduct((int)($this->product->id), $indexes[$fieldName], $fileName); unlink($tmpName);*/ if ($this->isMP3($file)) { $fileName = "Z" . $fileName; if (!rename($tmpName, _PS_UPLOAD_DIR_.$fileName)) { $errors[] = Tools::displayError('An error occurred during the file upload.'); return false; } //echo 'nom temporaire===>'.$tmpName; $oldfile = _PS_IMG_DIR_.'mp3.jpg'; } elseif ($this->isAI($file)) { $fileName = "A" . $fileName; if (!rename($tmpName, _PS_UPLOAD_DIR_.$fileName)) { $errors[] = Tools::displayError('An error occurred during the file upload.'); return false; } //echo 'nom temporaire===>'.$tmpName; $oldfile = _PS_IMG_DIR_.'ai.jpg'; } elseif ($this->isPSD($file)) { $fileName = "S" . $fileName; if (!rename($tmpName, _PS_UPLOAD_DIR_.$fileName)) { $errors[] = Tools::displayError('An error occurred during the file upload.'); return false; } //echo 'nom temporaire===>'.$tmpName; $oldfile = _PS_IMG_DIR_.'psd.jpg'; } elseif ($this->isPDF($file)) { $fileName = "P" . $fileName; if (!rename($tmpName, _PS_UPLOAD_DIR_.$fileName)) { $errors[] = Tools::displayError('An error occurred during the image upload.'); return false; } //echo 'nom temporaire===>'.$tmpName; $oldfile = _PS_IMG_DIR_.'pdf.jpg'; } else { $fileName = "J" . $fileName; if (!imageResize($tmpName, _PS_UPLOAD_DIR_.$fileName)) { $errors[] = Tools::displayError('An error occurred during the image upload.'); return false; } $oldfile = $tmpName; } //echo 'old file===>'.$oldfile.'<br />upload===>'._PS_UPLOAD_DIR_.$fileName.'<br />'; if (!imageResize($oldfile, _PS_UPLOAD_DIR_.$fileName.'_small', intval(Configuration::get('PS_PRODUCT_PICTURE_WIDTH')), intval(Configuration::get('PS_PRODUCT_PICTURE_HEIGHT')))) { //echo 'Je suis passé par la !!! HAHAHA !!!'; $errors[] = Tools::displayError('An error occurred during the image upload.'); return false; } if (!chmod(_PS_UPLOAD_DIR_.$fileName, 0777) OR !chmod(_PS_UPLOAD_DIR_.$fileName.'_small', 0777)) { $errors[] = Tools::displayError('An error occurred during the image upload.'); return false; } $cart->addPictureToProduct(intval($product->id), $indexes[$fieldName], $fileName); unset($oldfile); unlink($tmpName); } return true; } Dans cette portion, j'ai remplacé tous les "zip" par "mp3" et "ZIP" par "MP3". Voici comment j'ai modifier images.inc.php : function isPicture($file, $types = NULL) { /* Detect mime content type */ $mimeType = false; if (!$types) $types = array('image/gif', 'image/jpg', 'image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'application/pdf', 'application/acrobat', 'application/nappdf', 'application/x-pdf', 'application/vnd.pdf', 'text/pdf', 'text/x-pdf', 'multipart/x-mp3', 'application/mp3', 'application/x-mp3-compressed', 'application/x-mp3', 'application/illustrator', 'application/photoshop', 'application/psd', 'application/x-photoshop', 'image/photoshop', 'image/psd', 'image/x-photoshop', 'image/x-psd', 'image/vnd.adobe.photoshop', 'application/octet-stream'); /* Try 4 different methods to determine the mime type */ if (function_exists('finfo_open')) { $const = defined('FILEINFO_MIME_TYPE') ? FILEINFO_MIME_TYPE : FILEINFO_MIME; $finfo = finfo_open($const); $mimeType = finfo_file($finfo, $file['tmp_name']); finfo_close($finfo); } elseif (function_exists('mime_content_type')) $mimeType = mime_content_type($file['tmp_name']); elseif (function_exists('exec')) { $mimeType = trim(exec('file -b --mime-type '.escapeshellarg($file['tmp_name']))); if (!$mimeType) $mimeType = trim(exec('file --mime '.escapeshellarg($file['tmp_name']))); if (!$mimeType) $mimeType = trim(exec('file -bi '.escapeshellarg($file['tmp_name']))); } if (empty($mimeType) OR $mimeType == 'regular file' OR $mimeType == 'text/plain') $mimeType = $file['type']; /* For each allowed MIME type, we are looking for it inside the current MIME type */ foreach ($types AS $type) if (strstr($mimeType, $type)) return true; return false; } La encore, j'ai remplacé les zip par mp3. Pour le displayImage.php : $name = $_GET['name']; $file = $_GET['img']; require_once(dirname(__FILE__).'/../config/config.inc.php'); require_once(dirname(__FILE__).'/init.php'); $type = substr($file, 0, 1); $img = substr($file, 1); if (isset($img) AND Validate::isMd5($img) AND isset($name) AND Validate::isGenericName($name) AND file_exists(_PS_UPLOAD_DIR_.$file)) { if ($type == "P") { header('Content-type: application/pdf'); $ext = ".pdf"; } elseif ($type == "A") { header('Content-type: application/illustrator'); $ext = ".ai"; }elseif ($type == "Z") { header('Content-type: application/mp3'); $ext = ".mp3"; }elseif ($type == "S") { header('Content-type: application/photoshop'); $ext = ".psd"; }elseif ($type == "J") { header('Content-type: image/jpeg'); $ext = ".jpg"; } header('Content-Disposition: attachment; filename="'.$name.$ext.'"'); echo file_get_contents(_PS_UPLOAD_DIR_.$file); }else{ $file_exists = 0; $isMd5 = 0; $isGenericName = 0; if(file_exists(_PS_UPLOAD_DIR_.$file)){ $file_exists = 1; } if(Validate::isMd5($img)){ $isMd5 = 1; } if(Validate::isGenericName($name)){ $isGenericName = 1; } echo 'POBLEME !!!<br />img:'.$img.' name : '.$name.'file_exists : '.$file_exists.'isMd5 : '.$isMd5.'isGenericName : '.$isGenericName; } Par contre, j'ai rien changé dans AdminOrders.php, je ne crois pas que c'était nécessaire... Donc, quand je télécharge un fichier .mp3, j'ai l'erreur suivante qui apparait : Image format not recognized, allowed formats are: .gif, .jpg, .png, .pdf, .psd, .ai, .mp3 Voila, je serai vraiment content de comprendre ce qui ne fonctionne pas. Désolé de la longueur de ce post, je sais pas s ic'est le plus judicieux de copier/coller le code dans le message .. ^^
  15. Broceliande : Je suis étudiant, mais ce projet n'est pas lié à mes études. Je souhaite lancer un site d'e-commerce en parallèle de mes étude, tout simplement. Pour ce qui concerne le fait que prestashop soit prévu pour l'upload d'image, le tutorial que j'ai présenté dans mon premier message fonctionne ( ce qui répond également à jeckyl ). Par conséquent, j'arrive bien à uploader des pdf et des zip. C'est pour cela que je ne comprends pas pourquoi je n'arrive pas avec d'autres extensions! Dans tous les cas, merci de ces réponses rapides. Il s'agit la de mon premier topic, et je suis agréablement surpris de la rapidité de la communauté !
×
×
  • Create New...