PANEL PHP/AJAX

cs_canibale Messages postés 33 Date d'inscription mardi 23 mai 2006 Statut Membre Dernière intervention 28 février 2009 - 21 févr. 2009 à 23:24
medenia Messages postés 1 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 27 septembre 2010 - 27 sept. 2010 à 23:59
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49323-panel-php-ajax

medenia Messages postés 1 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 27 septembre 2010
27 sept. 2010 à 23:59
Merci bcp pour ce code, il est vraiment tres bien detaille...mais j'ai un soucis -lorsque je rajoute un produit ca me le rajoute , mais quand je veux ajouter un autre produit ca me le remplace par le produit deja rajoute.En gros je peux pas rajouter plus qu'un produit?Avez vous une idee a quoi c'est du?

voici le bout de code ou l'image ajoute le produit

<?php do {

$ref=$row_Recordset2['Reference'];
$label=$row_Recordset2['Description'];
$qt=$row_Recordset2['Quantite'];
$price=$row_Recordset2['Prix'];

....

<td width="65" height="35" padding="0" margin="0"> ','<?php echo $label ?>','<?php echo $qt ?>','<?php echo $price ?>');" onClick="deleteByRef('<?php echo $ref ?>');"/> </td>
lina22 Messages postés 34 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 25 août 2009
21 juil. 2009 à 18:34
bonjour, comment on peut adapter ce code pour un autre truc , en faite sur mon ihm je veux quand j'affiche un rapport si il m'intéresse je veux pouvoir le sélectionné et l'ajouter a mon panier pour que à la fin je puisse télécharger seulement les rapport que j'ai sélectionnée
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
27 avril 2009 à 17:47
^^ bien sur qu'ils prennents une commission,
mais de tout ce que j'ai pu epucher comme doc a ce sujet il semblerait que ce soit le moins cher et le plus avantageux....

les banques te facture la mise en service du systeme, + un abonnement mensuel et un pourcentage sur tes ventes :-)
louisJJ Messages postés 3 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 27 avril 2009
27 avril 2009 à 17:08
ok merci aquewel.
C'est un peu complexe leur truc à Paypal, mais il me semble que ça commence à fonctionner chez moi.
En plus ils prennent une commission sur les paiements, évidemment.
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
24 avril 2009 à 23:23
^^ t un cokin toi :-)

o moins avec cette exemple tu a le choix des deux

apres va sur paypal
https://www.paypal-france.fr/marchands/solutions-paiement/paypal-integral.php

ya plein de cochonneries sympas à lire à ce sujet.
louisJJ Messages postés 3 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 27 avril 2009
24 avril 2009 à 23:17
J'ai pris le form posté par aquewel et je l'ai mis dans une page vers laquelle pointe le lien "valider votre commande"...et ça fonctionne, ça envoie le tout vers Paypal.
L'inconvénient c'est que la page Paypal ne pousse pas à faire un paiement en Carte Bleue (petit lien peu mis en avant) mais à ouvrir un compte paypal.
Quelqu'un à une idée pour facilité le paiement en CB?
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
24 avril 2009 à 23:11
et en tantant de le passer en variable?

genre l'id de groupe de chanson qui sont a payé et tu passe cet id par paypal
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
24 avril 2009 à 22:23
Bonjour,
Pour le fourmulaire c'est simple , ce que je n'ai encore jamais essayé c'est ce processus :
1 - valider paiement (payer des téléchargements )
2 - revenir sur une page pour récuperer les téléchaargement .
ylawen Messages postés 2 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 24 avril 2009
24 avril 2009 à 10:31
Merci pour ta réponse Mehdi, tout fonctionne comme je l'esperais :)
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
24 avril 2009 à 02:41
Bon je reviens un peu sur le sujet.
Pour paypal, j'ai pas cherché mais sur prestashop
ca passe par un formulaire comme ca :

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="paypal_form" class="hidden">






































</form>

voila un bou :-)
a+
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
23 avril 2009 à 12:35
Ylawen ,
Dans ce post, je n'ai pas mis de script panier En Gros, mais tu l'as déja comme tu as l'as déja comme tu as le panier en SESSION, tu n'as qu'à récuper les valeurs et afficher ton panier au style que tu veux.

LOUISJJ,
Je ne l'ai pas lié à PayPal ou autre, mais pourrais-je compter sur toi pour le poster et me faire parvenir le lien si t'arrive à le lier ? Merci :-) , excuse la contre attaque mais j'ai vraiment pas le temps lol .
louisJJ Messages postés 3 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 27 avril 2009
23 avril 2009 à 10:57
Merci pour ce script. Bien que débutant j'ai pu l'utiliser pour mon site.
Simplement, je ne parviens poursuivre, c'est à dire à faire en sorte que la validation de la commande mène à la page paypal regroupant le contenu du panier et la possibilité de payer en carte bleue.
Pourriez-vous m'aider?
merci
ylawen Messages postés 2 Date d'inscription mardi 21 avril 2009 Statut Membre Dernière intervention 24 avril 2009
22 avril 2009 à 00:13
Merci pour ce script qui fonctionne parfaitement chez moi et au look plutot sympa :)
Mon problème concerne la validation de la commande, vers quel page rediriger mon visiteur afin qu'il accede à son panier "en grand" et que sa commande me soit envoyée?

Merci de m'éclairer, je n'ai pas osé trop trifouiller de peur de tout casser :)
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
2 avril 2009 à 21:16
Bonjour,
Effectivement cette erreur existe sur cette source, je l'ai trouvé et supprimé sur une version que j'ai sur mon DDure; Je vais réctifier dès que possible.
Merci
werhanisaber Messages postés 1 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 2 avril 2009
2 avril 2009 à 18:57
c'est un bon travail mais lors de suppression de plusieurs articles,il supprime par 1 seul article et c'est une erreur;)
victorcoasne Messages postés 1101 Date d'inscription jeudi 24 avril 2003 Statut Membre Dernière intervention 23 juillet 2023 7
2 mars 2009 à 22:34
Pourtant tu en es bien l'auteur sur la source mais c'est pas grave, tu contactes un admin et tout rentre dans l'ordre ;)
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
2 mars 2009 à 14:10
L'autre source sur javascriptfr je ne sais pas comment elle s'ait rendue là ! en plus je n'ai pas trouvé un option supprmier ...
victorcoasne Messages postés 1101 Date d'inscription jeudi 24 avril 2003 Statut Membre Dernière intervention 23 juillet 2023 7
2 mars 2009 à 13:58
J'aime bien, tu poste la même source sur phpcs et javascriptfr en mettant PANIER au lieu de PANEL
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
28 févr. 2009 à 12:40
Alors envois moi un email en MP, et je vais t'envoyer mon code ... qui marche.. un page php complete ..
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
28 févr. 2009 à 00:44
waou rapide :-)

merci c'est sympa en tout cas je galere bien avec ton code

firefox me sort
Erreur : missing ) after argument list
Fichier Source : http://127.0.0.1/search_dn/dn-cartes.php
Ligne : 1, Colonne : 11
Code Source :
add(brique Ananas,'22',1,5.98)

comme erreur javascript
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
28 févr. 2009 à 00:27
Il est en haut , dans la parte source de cette page .
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
28 févr. 2009 à 00:22
bon tarde pas a mettre un exemple parce que je pige pas le truc...
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
25 févr. 2009 à 23:25
oops, pardon il faut inclure caddie.php , c'est la représentation html du panier et non pas ajaxcaddie.php .
De plus pour ajouter un article au panier, il suffit ( sur la meme page ) sur l'article mettre un lien :
onClick="add('.$title.',\''.$fileRef.'\',$quantite,'.$price.');
onClick="deleteByRef('ref') ;

Je metterai un exemple php d'utilisation tout de suite;
à relir la présentation du code .
Merci
aquewel Messages postés 143 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 juin 2010
25 févr. 2009 à 22:28
yop salut a tous

pas comme code qui tombe au bon moment sympa de faire tourner

seulement quand j'inclue (?) ajaxCaddie.php rien ne s'affiche !
est ce que j'ai raté un etape ?

axel
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
22 févr. 2009 à 18:10
Salut,

J'ai, comme d'habitude, pas regardé le code... Je voudrais juste réagir à deux points.

1/ Panel en anglais, ça veut dire panneau. D'après le titre, je m'attendais à un panneau d'admin ou un truc dans le genre. Donc soit tu utilises des mots français, soit tu utilises des mots anglais mais bien traduits ;)
Ca n'empêche pas le code de fonctionner, mais pour que tout le monde comprenne comment il marche et de quoi il s'agit, ça me parait non négligeable.

2/ Concernant PHP4... Cette version de PHP n'est plus suportée depuis le 31 décembre 2007 ni développée depuis août 2008. PHP5.3 est en version alpha, et PHP6 approche à grands pas.
Rien que pour cette raison, il me semble indispensable de passer à PHP5.
Après, concernant le code produit, PHP5 n'empêche pas de rester dans le procédural, mais il apporte quuand même suffisament de bonnes nouveautés en POO pour ne plus avoir vraiment le choix que de s'y mettre... Tout dépend également de ce que tu veux faire : si c'est pour t'amuser dans ton coin, faiis comme tu veux. Si c'est professionnel et que tu veux vivre de tes développements, je pense que la POO est vraiment incontournable, parce que c'est ce que tout le monde recherche aujourd'hui (en tout cas de plus en plus : on ne m'a jamais demandé de faire du code procédural).

Si tu refonds ta source en OO, ça risque d'être plus facile pour d'autres personnes de la modifier, l'améliorer, etc. Et puis bon, d'une manière générale, l'objet, c'est quand même mieux, même s'il ne faut pas nécessairement en mettre absolument partout.
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
22 févr. 2009 à 17:20
Merci kankrelune,
D'abord pourquoi je n'ai pas utilisé de POO, tout simplement parceque je ne l'ai jamais fait sur PHP, je fais e la programmation procédurale pour mes sites ... et oui,, j'usqu'à ce jour.
Je fais une autoformation en php4 cett semain , mais :

ME conseillez vous de passer directement à la 5 ?? je ne sais pas ..

il se peut qu'il y ait aquelques erreurs biensure, il ya aussi des cas non généralisbales . j'ai essayé de le generaliser car au début je l'ai fait pour répondre à un besoin spécifique . par exemple j'ai besoin de ne pas avoir une quatité supérieure à 1 .

mais je pense dans la version que je poste on peut en avoir ..
kankrelune Messages postés 1293 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 21 mai 2015
22 févr. 2009 à 14:46
while(isset($_SESSION['panel']['ref'][+$i]))

=>

while(isset($_SESSION['panel']['ref'][++$i]))

@ tchaOo°
kankrelune Messages postés 1293 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 21 mai 2015
22 févr. 2009 à 14:44
Bonjour... tout d'abord bravo pour cette source c'est plutôt bien codé et pensé dans l'ensemble... .. .

Cependant la plus grosse erreur à mon sens c'est dans la structure de ton code... tu dois l'orienter objet... c'est déjà quasiment une class... cela allègera le code et le rendra plus clair, facile à manipuler, modulable et de plus tu évitera certaine routine comme le...

if (createPanel())

qui, au passage, est inutile puisque createPanel() renvoie toujours true d'ailleurs dans cette fonction pourquoi assigne tu ton retour à une variable c'est inutile...

function createPanel()
{
if(!isset($_SESSION))
session_star();
if(!isset($_SESSION['panel']) || !is_array($_SESSION['panel']))
{
$_SESSION['panel'] = array();
$_SESSION['panel']['ref'] = array();
$_SESSION['panel']['label'] = array();
$_SESSION['panel']['qt'] = array();
$_SESSION['panel']['price'] = array();
}
}

-------

for($i = 0; $i < count($_SESSION['panel']['ref']); $i++)

surtout pas... ton count() est éxécuté à chaque itération c'est inutile vu que ton tableau n'est pas censé changer de taille en cours de route...

for($i=0,$limit=count($_SESSION['panel']['ref']);$i<$limit;++$i)

j'aurais même tendance à faire...

$i=-1;
while(isset($_SESSION['panel']['ref'][+$i]))

------------

c'est un détail mais il y a des moments où tu pourrais gagner de la place...

function isInPanel($ref)
{
createPanel();

if(!empty($ref))
return (array_search($ref, $_SESSION['panel']['ref']) !== false);

return false;
}

------------------

dans getPriceByRef($ref) tu utilise une variable ($label) qui n'est pas instanciée dans ta fonction... dans les fonction get****ByPosition() tu ne vérifie pas l'éxistance de ton entrée avant de l'affecter...

met error_reporting à E_ALL sur ton serveur local pour voir ce genre d'erreur... .. .

sinon, j'ai pas regardé tout en détail mais dans l'ensemble c'est plutôt bien codé... par contre une ou deux fonctions font un echo en cas d'échec ou de réussite tu devrais te contenter de renvoyer true ou false et de gérer le message dans ta page de traitement ce n'est pas le role de ces fonctions de gérer de l'affichage... .. .

Mais je réitère passe ton code en objet... et si vraiment tu veux pas je te conseil de mettre un préfixe à tes noms de fonctions genre myPanel_* d'une part ça évitera les collisions avec d'autres script et ça rendra le code plus clair parce que add(xxx) au milieu d'un script c'est pas très parlant... .. . ;o)

Je met 8/10... bonne continuation... .. .

@ tchaOo°
mehdi7604 Messages postés 118 Date d'inscription jeudi 11 mai 2006 Statut Membre Dernière intervention 6 mars 2015
21 févr. 2009 à 23:58
Merci bien ;
cs_canibale Messages postés 33 Date d'inscription mardi 23 mai 2006 Statut Membre Dernière intervention 28 février 2009
21 févr. 2009 à 23:24
Bonsoir, déjà je te félicite pour la très bonne présentation, détaillée, de ton script qui n'est pas très difficile d'utilisation si l'on a lu ce que tu nous donne comme informations.
Oui ça peut être utile, je le mets de coté car je pense avoir à l'utiliser dans le futur pour mon site (après quelques adaptations).
9/10 donc.
Rejoignez-nous