Aide pour site de vente en ligne

Aide pour site de vente en ligne - PHP - Programmation

Marsh Posté le 16-09-2006 à 23:57:51    

Bonjour tout le monde,
 
je fais appel à vous afin d'obtenir des conseils pour améliorer mon site. En effet, je suis étudiant en licence pro d'informatique, et j'ai du concevoir un site de vente en ligne de matériel informatique, visible à l'adresse suivante:
 
http://www.a-ix-informatique.fr
 
J'ai développé ce site en PHP/Mysql. Par contre, le design n'est vraiment pas mon fort, et si je trouve que je m'en sort pas mal, j'aimerais que vous me fassiez part de vos remarques à ce niveau. N'hésitez pas à me dire si le site est améliorable dans d'autres domaines (ergonomie, contenu, prix, produits proposés).
Enfin, pour le paiement, j'ai opté pour Paypal, je voulais savoir ce que vous en pensez. J'ai sécurisé le tout avec leur système NIP (Notification Instantanée de Paiement), et apparement tout fonctionne pour le mieux.
 
Voilà, j'espère que vous me ferez part de vos remarques. Merci d'avance!

Reply

Marsh Posté le 16-09-2006 à 23:57:51   

Reply

Marsh Posté le 17-09-2006 à 00:03:50    

je crois qu'on a vu bien pire niveau design ici


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 17-09-2006 à 00:05:49    

merci bien, il faut dire que je me suis bien fatigué quamd même! Au départ, je suis parti sur la base d'un kit graphique que j'avais acheté, avant de le modifier en quasi totalité (seules les couleurs ont été conservées en gros). Sinon, pas de remarque négative?

Reply

Marsh Posté le 17-09-2006 à 00:10:40    

les vignettes c'est bien, mais faut pas les redimensionner html, c'est moche.  
 
sinon le menu est un peu long, je verrais bien un niveau supplémentaire


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 17-09-2006 à 00:13:01    

ok pour les vignettes, mais c'est quoi la meilleure technique alors?
sinon pour le menu, c'est vrai qu'il est long, mais c'est difficile à modifier dans la mesure où il est construit à partir du catalogue de produit du fournisseur de matériel

Reply

Marsh Posté le 17-09-2006 à 00:15:12    

ben si tu redimensionne en 40*50, faut pas mettre une autre dimension dans le tag [:jagstang]
 
sinon
 
http://validator.w3.org/check?uri= [...] ique.fr%2F


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 17-09-2006 à 00:19:55    

en effet, la validation xhtml pose un problème que je tente de résoudre. Le problème vient également du menu, que je génère à l'aide d'une fonction récursise assez compliquée.

Reply

Marsh Posté le 17-09-2006 à 00:28:56    

ça devrait pas poser de problème... poste ta fonction récursive si tu veux


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 17-09-2006 à 00:47:06    

jagstang a écrit :

ça devrait pas poser de problème... poste ta fonction récursive si tu veux


 
ok, alors tout d'abord, je crée la base de données à partir d'un fichier csv qui contient, pour chaque ligne, un produit, pour lequel est mentioné sa catégorie. Par exemple, on retrouvera "Boitiers/BTX", "Alimentation/Externe" ou encore "Medias Vierges/DVD". Pour chaque produit, sa catégorie est donc présente sous cette forme dans la base de données. voici alors le code utilisé pour créer le menu. En effet, on crée directement le fichier à inclure, afin de gagner du temps plus tard lors de l'affichage (au lieu de faire des appels dans la base de données):
 

Code :
  1. function get_sous_categories($categorie_parent)
  2. {
  3. global $code;
  4. $niveau = substr_count($categorie_parent, '/');
  5. //Requête sql permettant de récupérer les sous-catégories
  6. $reqSousCat = "SELECT DISTINCT Classement_Produit FROM Produits WHERE Classement_Produit LIKE '".$categorie_parent."%' ORDER BY Classement_Produit ASC";
  7. //Execution de la requête
  8. $resSousCat = mysql_query($reqSousCat) or die ("erreur lors de l'execution de $resSousCat => ".mysql_error());
  9. while ($data = mysql_fetch_array($resSousCat))
  10. {
  11.  $valeur = explode("/", $data['Classement_Produit']);
  12.  if (substr_count($data['Classement_Produit'], '/') > $niveau)
  13.   $tab_categories[$categorie_parent][] = $valeur[$niveau+1];
  14. }
  15. $code .= "<ul>";
  16. $tab_categories[$categorie_parent] = array_unique($tab_categories[$categorie_parent]);
  17. foreach ($tab_categories[$categorie_parent] as $cat)
  18. {
  19.  $code .=  "<li><a href=\"AffichageProduits.php?Categorie=$categorie_parent/$cat\">$cat</a>\n";
  20.  get_sous_categories($categorie_parent."/".$cat);
  21.  $code .= "</li>\n";
  22. }
  23. $code .= "</ul>\n";
  24. }
  25. //On récupère les catégories PRINCIPALES (celles ce premier niveau)
  26. $reqCat = "SELECT DISTINCT Classement_Produit FROM Produits ORDER BY Classement_Produit ASC";
  27. //Execution de la requête
  28. $resCat = mysql_query($reqCat);
  29. while ($data = mysql_fetch_array($resCat))
  30. {
  31. $valeur = explode("/", $data['Classement_Produit']);
  32. $tabCat[] = $valeur[0];
  33. }
  34. //On dédoublonne le tableau
  35. $tabCat = array_unique($tabCat);
  36. /*
  37. On a maintenant les catégories de premier niveau
  38. */
  39. //Désactivation des messages d'erreur
  40. error_reporting(0);
  41. //Début du code HTML généré
  42. $code = "<ul id=\"nav\">\n";
  43. //Pour chaque catégorie principale, on recherche ses sous-catégories
  44. foreach ($tabCat as $principale)
  45. {
  46. $code .= " <li><a href=\"AffichageProduits.php?Categorie=$principale\">$principale</a>\n";
  47. get_sous_categories($principale);
  48. $code .= "</li>\n";
  49. }
  50. //Fin du code HTML du menu
  51. $code .= "</ul>\n";
  52. $fichierMenu = "Menu.php"
  53. $code = $fichierMenu."<br />\n".$code;
  54. //On crée le fichier
  55. $fichier = fopen($fichierMenu, "w" );
  56. fputs($fichier, $code);
  57. fclose($fichier);


 
 
J'éspère que c'est assez clair...

Reply

Marsh Posté le 17-09-2006 à 01:25:08    

c'est un bon début, par contre à ta place je virerais tous ces pop-ups pour avoir une navigation dans une seule fenêtre ;)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 17-09-2006 à 01:25:08   

Reply

Marsh Posté le 17-09-2006 à 02:58:52    

Les urls sont pas top, on trouve des â : / dedans.
 
Pour te sortir de la rapidement quand tu fais tes select pour les url:
 

Code :
  1. $url = preg_replace("@[^][a-z0-9]@si","-",$url)


 
La navigation est bien faite, par contre le temps de calcul lorsque tu extrait tes articles de ta Db sont visibles.
Est-ce que tu caches tes pages ?  
 
Niveau design ton wrapper ou tableau est beaucoup trop large ( >1000 px ? ).
Les pages sont egalement trop longues. Pense à l'utilisateur en 800*600 et 1024*768..
 
Au sens purement artistique, je trouve que ca fait très glauque. Tu devrais peut etre changer la couleur de tes titres sous titres.
Jouer sur les polices peut etre pas mal.
 
Au niveau du code HTML CSS ca ma l'air très bien : bravo !
 
Au niveau des balises meta:
- description devrait contenir un texte plus que des mots separes par des virgules
- keyword ca foire regarde ta page index.php accueil
- robots: follow,index,all == useless. Cette meta ne sert pas tu px l'enlever sans aucun soucis et egalement la laisser si tu le souhaites :)
 
Voila sinon essaye de t'inspirer de la concurrence.
 
Edit: frappe tout tes input à coup de >///\0/\\\<  pour faire un rapide check up de surface ...


Message édité par supermofo le 17-09-2006 à 03:04:13
Reply

Marsh Posté le 17-09-2006 à 09:20:53    

J'ai cru voir que tu utilises des :hover sur des li, ton menu ne fonctionne donc sûrement pas sous IE<=6 qui est le navigateur le plus répandu je crois et comme tu n'as pas de pages pour tes catégories ton site n'est fonctionnel que pour les utilisateurs Firefox, Mozilla, IE7 et autres navigateurs récents.
 
N.B. : Je n'ai pas IE6 donc je ne peux pas tester alors si je me trompe dis le moi.

Reply

Marsh Posté le 17-09-2006 à 10:34:32    

c'est vrai que la page est très large, je vais essayer de la diminuer.
Autrement, ca sert à quoi "frappe tout tes input à coup de >///\0/\\\<  pour faire un rapide check up de surface"?
 
pour ce qui st de la classe :hover, j'ai une classe sfhover qui y est lié avec du javascript, ce qui la rend compatible avec IE

Reply

Marsh Posté le 17-09-2006 à 10:42:26    

forzayalta a écrit :

pour ce qui st de la classe :hover, j'ai une classe sfhover qui y est lié avec du javascript, ce qui la rend compatible avec IE


Ah OK. :whistle:

Reply

Marsh Posté le 17-09-2006 à 10:45:39    

forzayalta a écrit :

c'est vrai que la page est très large, je vais essayer de la diminuer.


Tu ferais mieux de la faire fluide ...

Reply

Marsh Posté le 17-09-2006 à 14:55:12    

Il n'y a vraiment pas besoin de javascript pour ton menu, mais bon essaye ca.
 
#menu ul{
width:
height:
}
#menu ul li a{
display:block
}
#menu ul li a:hover{
display:block
background:
color:
}
 

Reply

Marsh Posté le 17-09-2006 à 15:45:01    

supermofo a écrit :

Il n'y a vraiment pas besoin de javascript pour ton menu, mais bon essaye ca.
 
#menu ul{
width:
height:
}
#menu ul li a{
display:block
}
#menu ul li a:hover{
display:block
background:
color:
}


Si il y a besoin de javascript pour que ça fonctionne sous IE6.

Reply

Marsh Posté le 19-09-2006 à 16:43:43    

CNeo a écrit :

Si il y a besoin de javascript pour que ça fonctionne sous IE6.


Négatif, j'en ai fait des tonnes en css qui marche sous IE6

Reply

Marsh Posté le 19-09-2006 à 16:57:22    

Salut
 
Sous IE7 y'a tout qui se décalle.
 
Sorti de ça, aucun souci avec le site.
En plus ça à l'air d'être fait proprement (pas prix passés en formulaire caché par exemple, contrairement à nombre de sites fais soit-disant par des pros)

Message cité 1 fois
Message édité par MagicBuzz le 19-09-2006 à 16:57:50
Reply

Marsh Posté le 19-09-2006 à 17:09:54    

MagicBuzz a écrit :


En plus ça à l'air d'être fait proprement (pas prix passés en formulaire caché par exemple, contrairement à nombre de sites fais soit-disant par des pros)


 
 ça j'adore [:gui42]  
 
en même temps ça crée pas un risque en soi mais bon, c'est pas top sérieux quoi


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-09-2006 à 17:13:13    

sisi
 
enregistrer-sous, sur le bureau.
tu édites la page.
tu changes les prix.
tu ouvres la page sur le bureau.
tu soumets la page.
 
et hop ! une xbox 360 à 10 € chez GrosBill par exemple :spamafote:
 
(et tant pis s'ils ont pas changé le code de leur site pourri, je leur ai envoyé au moins 3 mails avec captures d'écran de la page de paiement en ligne... jamais eu de réponse :spamafote:)

Reply

Marsh Posté le 19-09-2006 à 17:27:24    

ok mais la loi dit que le marchand peut refuser la vente si le prix est dérisoire étant donné l'article, donc ils auront le droit de pas te vendre à ce prix là ;)
 
ok faudra qu'ils annulent toutes les commandes, mais rien ne les force à faire la vente
 
si en plus le prix vient d'une manip du client, c'est encore plus le cas je pense :D
 
hop, source ici : http://www.01net.com/editorial/312 [...] -la-loi-./


Message édité par Sh@rdar le 19-09-2006 à 17:30:42

---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-09-2006 à 17:42:21    

fondu dans la masse, peut de chances d'être découvert. et suffit de faire un bon gros -50%, la lois peut plus rien dire à moins d'avoir la preuve matérielle de la tricherie.
ensuite, le risque d'une erreur de leur part est suffisament grand pour qu'ils s'y reprennent à deux fois avant d'annuler la vente de peur d'une publicité désastreuse (personne se souvient de père noël ?), d'autant que la transaction bancaire est effectuée (et dans ce cas, ils ont intérêt à bien préparer leur truc)
 
enfin bref, ça reste une ineptie que des sites de ce type aient des failles aussi grosses.

Message cité 1 fois
Message édité par MagicBuzz le 19-09-2006 à 17:45:41
Reply

Marsh Posté le 19-09-2006 à 18:15:52    

si tu y crois tant que ça fais-le, t'auras qu'à revendre tout de suite après à -10% ;)
 
(amha ça passera pas)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 19-09-2006 à 19:11:46    

moi je l'ai pas fait, mais le pote qui m'en a parlé en a acheté deux en divisant le prix par 10... et c'est passé :spamafote:
 
sauf que c'était à l'époque des Dreamcast (ça fait un moment qu'il y a la faille, j'ai dû faire au moins deux topics ici pour en parler déjà)


Message édité par MagicBuzz le 19-09-2006 à 19:12:32
Reply

Marsh Posté le 20-09-2006 à 00:21:45    

ben de ce coté la, pas de probleme je pense.
en effet, je passe la référence des produits commandés dans une variable de session ( dans mon panier en fait), et le prix est recherché dans la base de données (on prend le prix du produit correspondant à la référence sauvegardée dans la variable de session). Quand la commande est validée, elle est insérée dans la base de données, avec son contenu (references des articles). Le prix est transmis par formulaire, mais si le client le modifie, tampis pour lui, puisque apres l'étape de paiement, une notification instantanée de paiement (la fameuse "NIP" de Paypal) envoie les informations sur cette transaction. A ce moment la, un script verifie que le prix payé correspond bien a celui present dans la base de données. Il verifie aussi l'adresse du compte Paypal recevant l'argent, etc...
Donc, pas de soucis en principe.

Reply

Marsh Posté le 20-09-2006 à 01:42:42    

MagicBuzz a écrit :

fondu dans la masse, peut de chances d'être découvert. et suffit de faire un bon gros -50%, la lois peut plus rien dire à moins d'avoir la preuve matérielle de la tricherie.
ensuite, le risque d'une erreur de leur part est suffisament grand pour qu'ils s'y reprennent à deux fois avant d'annuler la vente de peur d'une publicité désastreuse (personne se souvient de père noël ?), d'autant que la transaction bancaire est effectuée (et dans ce cas, ils ont intérêt à bien préparer leur truc)
 
enfin bref, ça reste une ineptie que des sites de ce type aient des failles aussi grosses.


Intrusion dans un SI, tu connais surement ce que ça coute ;) Même si c'est pas une excuse pour le revendeur mais c'est punissable par la loi  
 :hello:

Reply

Marsh Posté le 20-09-2006 à 08:27:04    

Il ne s'agit pas d'une intrusion. C'est eux qui envoient des données à mon navigateur et lui font confiance. Je ne suis pas à l'abris d'un bug d'Internet Explorer (ou même d'un malware qui pourrait très bien s'amuser à faire ça... je t'en code un quand tu veux en VBS, qui divise systématiquement les prix chez GrosBill par 10 à l'insu de ton plein gré si tu veux...)

Message cité 1 fois
Message édité par MagicBuzz le 20-09-2006 à 08:27:39
Reply

Marsh Posté le 20-09-2006 à 10:38:48    

Juste pour donner mon avis, comme l'a dit JagStang regroupe certaines catégories ( les 13 catégories de cables..., les 3 rubriques souris, clavier, clavier/souris,... )
 
Ta page est trop large de quelques pixels, j'ai la barre de défilement horitontale qui est là pour rien (1024*768).


---------------
Instagram - Mon PVT en Australie.
Reply

Marsh Posté le 20-09-2006 à 13:47:05    

LePhasme a écrit :

Ta page est trop large de quelques pixels, j'ai la barre de défilement horitontale qui est là pour rien (1024*768).

Et je redit qu'un site c'est mieux quand c'est pas fixe.

Reply

Marsh Posté le 21-09-2006 à 01:47:12    

MagicBuzz a écrit :

Il ne s'agit pas d'une intrusion. C'est eux qui envoient des données à mon navigateur et lui font confiance. Je ne suis pas à l'abris d'un bug d'Internet Explorer (ou même d'un malware qui pourrait très bien s'amuser à faire ça... je t'en code un quand tu veux en VBS, qui divise systématiquement les prix chez GrosBill par 10 à l'insu de ton plein gré si tu veux...)


Et tu me l'envois par mail sans me le dire (juste en me demandant de désactiver mon antivirus  :whistle: )  :D  
 
Après c'est pas le sujet ici, mais modfiier volontairement c'est différent de se faire "pirater" sans le savoir ;)  :lol:

Reply

Marsh Posté le 21-09-2006 à 14:12:31    

Si c'est faisable en quelques lignes de VBS, c'est largement faisable dans un véritable malware hein...
Je veux dire par là que la faille est tellement immense qu'il est très difficile de mettre en cause ta bonne fois.
 
Pour te montrer que je ne dis pas n'importe quoi :
Voici un petit script que tu démarres, ça te lances IE (donc on peut aisément le mettre à la place du raccourci de IE). Si tu vas ensuite sur un certain forum, sous l'avatar des gens, on a leur status "connecté/déconnecté". Ca choquait une copine qui voulait un "e" derrière son status. C'est ce que fait donc ce script.
 

Code :
  1. Dim ie
  2. Dim oldUrl
  3. Set ie = CreateObject("InternetExplorer.Application" )
  4. ie.visible = 1
  5. oldUrl = ie.LocationURL
  6. On Error Resume Next
  7. do while Err.Number = 0
  8. if (oldUrl <> ie.LocationURL and ie.readystate = 4) then
  9.   oldUrl = ie.LocationURL
  10.           ie.document.title = ie.document.title & " avec la MagicBuzz feature"
  11.   if (left(oldUrl, 36) = "http://forum.zozoll-online.com/sujet" or left(oldUrl, 38) = "http://forum.zozoll-online.com/message" ) then
  12.    For each el in ie.document.getElementsByTagName("td" )
  13.     if (el.className = "Pseudo" ) then
  14.      if (lcase(el.ChildNodes(0).InnerText) = "meluzine" ) then
  15.       el.parentNode.parentNode.childNodes(1).childNodes(0).childNodes(5).innerText = el.parentNode.parentNode.childNodes(1).childNodes(0).childNodes(5).innerText & "e"
  16.      end if
  17.     end if
  18.    Next
  19.   end if
  20. end if
  21. Wscript.Sleep 50
  22. loop
  23. msgbox(err.description)
  24. ie.Close
  25. Set ie = Nothing

Reply

Marsh Posté le 31-12-2007 à 19:54:55    

Bonjour,
 
je débute dans la mise en place du nIP en php,
je voudrais m'adresser à la personne étudiant en licence en informatique, si elle voulait bien publier sur ce forum son scrip php pour le process du NIp;mais vraiment je serais reconnaissant, car je suis en train de mettre en place mon magasin en ligne reposant sur paypal.
S'il vous plait, aider moi pour la mise en place du NIP en php, ce serait un beau cadeau de nouvel an 2008, si on voulait bien publier sur ce forum le code Nip en php
Merci d'avance, j'ai vraiment besoin de ce code, d'autant plus, que forzayalta a testé son script et assure qu'il marche.Alors, s'il te plaît, tu veux bien m'aider?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed