balam

Utilisateur open source
  • Compteur de contenus

    175
  • Inscrit(e) le

  • Dernière visite


Messages posté(e)s par balam


  1. Il faut renommer l'ancienne fonction "email_commande" dans lib/fonctions/fonctions.php et coller la nouvelle :)

    Willy

    Willy bonjour,

    Je viens de faire les tests sur la modification que vous m'avez indiquée.

    Cela fonctionne pour le mail que reçoit le client, mais l'administrateur lui ne le reçoit pas.

    De plus, j'ai deux erreurs sur la fonction :

    Notice: Undefined index: quantité in /home/logosmag/public_html/boutique/lib/fonctions/fonctions.php on line 1003

    Notice: Undefined index: id in /home/logosmag/public_html/boutique/lib/fonctions/fonctions.php on line 1003

    J'ai bien compris, en principe, que le script ne trouvait pas la variable ou fonction de l'ID du produit et de la quantité.

    Quelle variable dois-je choisir ?

    " .$cat['id'] ."

    $cat['quantité'] ."

    Merci de vos conseils

    Balam


  2. Et avec ca ?

    function update_commande($frm) {
    
    
    /* Efface la commande dont le n° est $id */
    
    	global $wwwroot, $support;
    
    
    
    
    	$statut_details = "";
    
    
    
    
    	if ($frm['statut'] != 0) {
    
    
    
    
    	$sql_statut = "SELECT nom_".$_SESSION['langue']." FROM peel_statut WHERE id = '".$frm['statut']."'";
    
    
    
    
    	$res_statut = mysql_query($sql_statut);
    
    
    
    
    	$s = mysql_fetch_array($res_statut);
    
    
    
    
    	$statut_details = $s['nom_'.$_SESSION['langue'].''];
    
    
    
    
    	} else {
    
    
    
    
    	$statut_details = "commande initialisée";
    
    
    
    
    	}
    
    
    
    
    	if($frm['a_timestamp'] != "00/00/0000") {
    
    
    
    
    	$date_facture = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$','\\3-\\2-\\1', $frm['a_timestamp']);  
    
    
    
    
    	mysql_query("UPDATE peel_commandes SET a_timestamp = '".$date_facture."' WHERE id = '".$frm['id']."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    
    
    	}	 
    
    	mysql_query("UPDATE peel_commandes SET statut = '".intval($frm['statut'])."', statut_details = '".addslashes($statut_details)."' WHERE id = '".intval($frm['id'])."'") or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET numero = '".addslashes($frm['numero'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET client_info1 = '".addslashes($frm['facturation'])."', client_info2 = '".addslashes($frm['livraison'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET colis = '".addslashes($frm['colis'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET statut_affilie = '".addslashes(vb($frm['statut_affilie']))."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    
    //on recupere l email associe a la commande
    
    	$sql_commande= "SELECT email FROM peel_commandes WHERE id = '".intval($frm['id'])."'";
    
    
    
    
    	$res_commande= mysql_query($sql_commande);
    
    
    
    
    	$comm = mysql_fetch_array($res_commande);
    
    
    
    
    	$email = $comm['email'];
    
    // fin de on recupere l email associe a la commande
    
    
    // envoie du mail
    
    
    $mailSujet = "Avancée de votre commande ".$frm['id'];
    
    
    $mailObjet = "Bonjour, \n";
    
    
    $mailObjet .= " \nEtat de votre commande : ".$statut_details;
    
    
    mail($email,$mailSujet,$mailObjet,"From:$support");
    
    
    echo "<p class=\"normal\">un mail a été envoyé à ".$frm['email']." pour lui signifier l'avancée de sa commande.</p>";
    
    
    }

    Willy,

    Je recois le mail mais, il y a un problème, voici le mailque je recois

    "Bonjour,

    Etat de votre commande : Commande réglé"

    Et dans le back office j'ai cette erreur;

    Notice: Undefined index: email in /home/logosmag/public_html/boutique/administrer/commandes.php on line 341

    un mail a été envoyé à pour lui signifier l'avancée de sa commande.

    Je ne trouve pas l'erreur.

    Merci


  3. function update_commande($frm) {
    
    
    /* Efface la commande dont le n° est $id */
    
    	global $wwwroot, $support;
    
    
    
    
    	$statut_details = "";
    
    
    
    
    	if ($frm['statut'] != 0) {
    
    
    
    
    	$sql_statut = "SELECT nom_".$_SESSION['langue']." FROM peel_statut WHERE id = '".$frm['statut']."'";
    
    
    
    
    	$res_statut = mysql_query($sql_statut);
    
    
    
    
    	$s = mysql_fetch_array($res_statut);
    
    
    
    
    	$statut_details = $s['nom_'.$_SESSION['langue'].''];
    
    
    
    
    	} else {
    
    
    
    
    	$statut_details = "commande initialis&eacute;e";
    
    
    
    
    	}
    
    
    
    
    	if($frm['a_timestamp'] != "00/00/0000") {
    
    
    
    
    	$date_facture = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$','\\3-\\2-\\1', $frm['a_timestamp']);  
    
    
    
    
    	mysql_query("UPDATE peel_commandes SET a_timestamp = '".$date_facture."' WHERE id = '".$frm['id']."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    
    
    	} 	
    
    	mysql_query("UPDATE peel_commandes SET statut = '".intval($frm['statut'])."', statut_details = '".addslashes($statut_details)."' WHERE id = '".intval($frm['id'])."'") or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET numero = '".addslashes($frm['numero'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET client_info1 = '".addslashes($frm['facturation'])."', client_info2 = '".addslashes($frm['livraison'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET colis = '".addslashes($frm['colis'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	mysql_query("UPDATE peel_commandes SET statut_affilie = '".addslashes(vb($frm['statut_affilie']))."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    
    // envoie du mail
    
    
    $mailSujet = "Avancée de votre commande ".$frm['id'];
    
    
    $mailObjet = "Bonjour, \n";
    
    
    $mailObjet .= " \nEtat de votre commande : ".$statut_details;
    
    
    mail($frm['email'],$mailSujet,$mailObjet,"From:$support");
    
    
    echo "<p class=\"normal\">un mail a été envoyé à ".$frm['email']." pour lui signifier l'avancée de sa commande.</p>";
    
    
    }

    Voila, dites nous s'il y a une erreur.

    SI oui je pense qu'elle sera sur: $frm['email']

    Willy

    En effet Willy j'ai cette erreur qui s'affiche:

    Notice: Undefined index: email in /home/logosmag/public_html/boutique/administrer/commandes.php on line 323

    Notice: Undefined index: email in /home/logosmag/public_html/boutique/administrer/commandes.php on line 325

    un mail a été envoyé à pour lui signifier l'avancée de sa commande.


  4. Dans la fonction update_commande qui est également dans cette page, tu peux ajouter à la fin:

    // envoie du mail
    
    
    $mailSujet = "Avancée de votre commande";
    
    
    $mailObjet = "Bonjour, \n";
    
    
    $mailObjet .= " \nEtat de votre commande : ".$statut_details;
    
    
    mail($frm['email'],$mailSujet,$mailObjet,"From:$support");
    
    
    echo "<p class=\"normal\">un mail a été envoyé à ".$frm['email']." pour lui signifier l'avancée de sa commande.</p>";
    Et au debut de la fonction, ajoute:
    global $support;

    Willy

    Punaise !!! merci Willly, mais, j'ai toujour un message d'erreur

    Pouvez vous me dire sous quelle ligne exactement ?

    voici le bout de code de la fonction

    function update_commande($frm) {

    /* Efface la commande dont le n° est $id */

    global $wwwroot;

    $statut_details = "";

    if ($frm['statut'] != 0) {

    $sql_statut = "SELECT nom_".$_SESSION['langue']." FROM peel_statut WHERE id = '".$frm['statut']."'";

    $res_statut = mysql_query($sql_statut);

    $s = mysql_fetch_array($res_statut);

    $statut_details = $s['nom_'.$_SESSION['langue'].''];

    } else {

    $statut_details = "commande initialis&eacute;e";

    }

    if($frm['a_timestamp'] != "00/00/0000") {

    $date_facture = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$','\\3-\\2-\\1', $frm['a_timestamp']);

    mysql_query("UPDATE peel_commandes SET a_timestamp = '".$date_facture."' WHERE id = '".$frm['id']."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    }

    mysql_query("UPDATE peel_commandes SET statut = '".intval($frm['statut'])."', statut_details = '".addslashes($statut_details)."' WHERE id = '".intval($frm['id'])."'") or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    mysql_query("UPDATE peel_commandes SET numero = '".addslashes($frm['numero'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    mysql_query("UPDATE peel_commandes SET client_info1 = '".addslashes($frm['facturation'])."', client_info2 = '".addslashes($frm['livraison'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    mysql_query("UPDATE peel_commandes SET colis = '".addslashes($frm['colis'])."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    mysql_query("UPDATE peel_commandes SET statut_affilie = '".addslashes(vb($frm['statut_affilie']))."' WHERE id = '".intval($frm['id'])."'")or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    }


  5. Le soucis c'est que pas mal de fois on a pas toutes les infos alors on cherche, on cherche et en fait le code a été refait, ou alors une autre page appel telle ou telle fonction, mais on en l'a pas dit.

    Balam dit nous TOUT ( :) :P <_< ) et on pourra peut être t'aider.

    Willy

    Bon, tout, tout, tout, vous saurez tout sur le zi.., argh! non sur la page commande.php.

    Alors la version de la boutique : Premium 3.8.

    Hébergement mutualisé chez Privianet (depuis 4 ans jammais de problèmes)

    Il y a eu l'installation par M.Ruault de la boutique, du module référencement et du module carte bleue.

    J'ai fait comme modification le nº du colis pour le client son historique de commande.

    Je viens de remettre la page commande.php qu'il y avait à l'installation.Il y a donc maintenant sur cette page:

    case "update" :

    update_commande($_POST);

    $order = "o_timestamp";

    $sort = "DESC";

    affiche_liste_commandes(vn($_REQUEST['start']), $order, $sort);

    break;

    Pe


  6. Ce qui me parait bizarre c'est le "break" en plein milieu.

    Du coup on sort du cas "update" perso je le mettrais à la fin apres le '}' qui se trouev après le message qui s'affiche a l'écran.

    Tu as quelle version de premium, car je n'ais pas de page "/administrer/modeles/commande.php ", mais "/administrer/commande.php "

    Et dans mon case update de cette page j'ais uniquement:

    	case "update" :
    
    		update_commande($_POST);
    
    		$order = "o_timestamp";
    
    		$sort = "DESC";
    
    		affiche_liste_commandes(vn($_REQUEST['start']), $order, $sort);
    
    		break;

    Willy

    Merci de votre réponse Willy,

    La version de peel est 3.8

    J'avai en effet mis la fonction Break; après la "}", mais il y a deux erreur ;

    Notice: Undefined index: commandeid in /home/logosmag/public_html/boutique/administrer/commandes.php on line 67

    qui correspond à : update_commande($_POST);

    Notice: Undefined index: statut_details in /home/logosmag/public_html/boutique/administrer/commandes.php on line 71

    qui correspond à: $verif_commande = mysql_query("SELECT * FROM peel_commandes WHERE id = '".intval($_POST['commandeid'])."'");

    J'ai fait un test avec votre fonction :

    update_commande($_POST);

    $order = "o_timestamp";

    $sort = "DESC";

    affiche_liste_commandes(vn($_REQUEST['start']), $order, $sort);

    break;

    mais pas de mail au client pour l'avertir de la modification de l'état de sa comande.

    Je séche, mais je regarde encore.


  7. Bonjour,

    Ma fonction mail automatique de modification de commande dans le back office ne fonctionne pas.

    J'ai regardé dans le forum pour la version shopping mais cela ne fonctionne toujours pas.

    J'ai regardé dans : boutique/administrer/modeles/commande.php a la case update dont voici le code:

    case "update" :

    update_commande($_POST);

    $order = "o_timestamp";

    $sort = "DESC";

    affiche_liste_commandes(vn($_REQUEST['start']), $order, $sort);

    break;

    $verif_commande = mysql_query("SELECT * FROM peel_commandes WHERE id = '".intval($_POST['commandeid'])."'");

    $verif_commande_tab = mysql_fetch_object($verif_commande);

    if ($verif_commande_tab->statut_details != $_POST['statut_details'])

    {

    // recupération de l'email de la commande

    $qid = mysql_query("SELECT * FROM peel_societe");

    if ($qid) {

    if (mysql_num_rows($qid) > 0) {

    $ligne = mysql_fetch_object($qid);

    }

    }

    // envoie du mail

    $mailSujet = "Avancée de votre commande";

    $mailObjet = "Bonjour, \n";

    $mailObjet .= " \nEtat de votre commande : ".$_POST['statut_details'];

    mail($verif_commande_tab->email,$mailSujet,$mailObjet,"From:$ligne->email");

    echo "<p class=\"normal\">un mail a été envoyé à ".$verif_commande_tab->email." pour lui signifier l'avancée de sa commande.</p>";

    }

    J'ai cherché à conprendre la fonction mais pas de résultat, pouvez-vous m'aider svp ?

    Cordialement,

    Balam


  8. voici la solution

    dans commandes.php ajouter juste apres :

    	case "update" :
    ajouter :
    	$verif_commande = mysql_query("SELECT * FROM peel_commandes WHERE id = '".intval($_POST['commandeid'])."'");
    
    
    	$verif_commande_tab = mysql_fetch_object($verif_commande);
    
    
    	if ($verif_commande_tab->statut_details != $_POST['statut_details'])
    
    	{
    
    		// recupération de l'email de la commande 
    
    
    		$qid = mysql_query("SELECT * FROM peel_societe");
    
    		if ($qid) {
    
    
    		if (mysql_num_rows($qid) > 0) { 
    
    
    		$ligne = mysql_fetch_object($qid); 
    
    			}
    
    		}
    
    
    		// envoie du mail
    
    
    		$mailSujet = "Avancée de votre commande";
    
    
    		$mailObjet = "Bonjour, \n";
    
    
    		$mailObjet .= " \nEtat de votre commande : ".$_POST['statut_details'];
    
    
    		mail($verif_commande_tab->email,$mailSujet,$mailObjet,"From:$ligne->email");
    
    
    		echo "<p class=\"normal\">un mail a été envoyé à ".$verif_commande_tab->email." pour lui signifier l'avancée de sa commande.</p>";
    
    
    	}

    il n'y a rien à ajouter dans commandes_details.

    Bonjour,

    J'ai cette fonction dans ma page "administre/commande.php" et cela ne fonctionne pas. Pouvez-vous me guider pour que cela fonctionne ?

    Très cordialement,

    Balam

    case "update" :

    update_commande($_POST);

    $order = "o_timestamp";

    $sort = "DESC";

    affiche_liste_commandes(vn($_REQUEST['start']), $order, $sort);

    break;

    $verif_commande = mysql_query("SELECT * FROM peel_commandes WHERE id = '".intval($_POST['commandeid'])."'");

    $verif_commande_tab = mysql_fetch_object($verif_commande);

    if ($verif_commande_tab->statut_details != $_POST['statut_details'])

    {

    // recupération de l'email de la commande

    $qid = mysql_query("SELECT * FROM peel_societe");

    if ($qid) {

    if (mysql_num_rows($qid) > 0) {

    $ligne = mysql_fetch_object($qid);

    }

    }

    // envoie du mail

    $mailSujet = "Avancée de votre commande";

    $mailObjet = "Bonjour, \n";

    $mailObjet .= " \nEtat de votre commande : ".$_POST['statut_details'];

    mail($verif_commande_tab->email,$mailSujet,$mailObjet,"From:$ligne->email");

    echo "<p class=\"normal\">un mail a été envoyé à ".$verif_commande_tab->email." pour lui signifier l'avancée de sa commande.</p>";

    }


  9. Bonjour essaye avec ca dans lib/fonctions/fonctions.php apres avoir sauvegardé une ancienne version de cette fonction:

    function email_commande(&$commandeid) {
    
    
    	global $wwwroot;
    
    	global $site;
    
    	global $support;
    
    	global $langfile;
    
    
    	$result = mysql_query("SELECT * FROM peel_commandes WHERE id ='".$commandeid."'");
    
    
    	$com = mysql_fetch_object($result);
    
    
    	$timestamp = $com->o_timestamp;
    
    
    	$montant = $com->montant;
    
    
    	$goto = "/factures/facture_html.php?mode=proforma&id=$commandeid&timestamp=".urlencode($timestamp)."";
    
    
    	$urlcommande = $wwwroot.$goto;
    
    
    	$email_subject = EMAIL_ORDER_CONFIRMATION;
    
    	$email_object = EMAIL_ORDER_MESSAGE."\n\r";
    
    	$email_object .= "\n\r";
    
    	$email_object .= EMAIL_ORDER_DATE." : ".return_date_fr($timestamp)."\n\r";
    
    	$email_object .= "\n\r";
    
    	$email_object .= EMAIL_ORDER_NUMBER." : ".$commandeid."\n\r";
    
    	$email_object .= "\n\r";
    
    	$email_object .= EMAIL_ORDER_AMOUNT." : ".fprix($montant)." EUR TTC\n\r";
    
    	$email_object .= "\n\r";
    
    
    	$email_subject1 = $email_subject;
    
    
    
    	$qid = mysql_query("SELECT * FROM  peel_commandes_articles WHERE commande_id = $commandeid");
    
    
    	if ($qid) {
    
    
    		if (mysql_num_rows($qid) > 0) {
    
    
    			while ($cat =  mysql_fetch_array($qid)) {
    
    
    				$email_object .= $cat['quantité'] ." * " .$cat['nom_produit'] ."  " .$cat['id'] ."  " .$cat['prix'] ." Euros " .$cat['couleur'] ."  " .$cat['taille'] ."  " .$cat['comment'] ."\n\r";
    
    				$email_object1 .= "\n\r";
    
    
    			}
    
    		}
    
    	}
    
    	# Mail d'information envoy&eacute; &agrave; l'administrateur - ENVOYER EN LANGUE FRANCAISE UNIQUEMENT
    
    
    	mail(
    
    		$support,
    
    		"Nouvelle commande sur votre site web $site",
    
    		$email_subject1,
    
    		"FROM:$support");	
    
    
    
    
    
    	if ($com->paiement != CB) {
    
    
    	$email_object .= EMAIL_ORDER_PROFORMA." : ".$urlcommande."\n\r";
    
    	$email_object .= "\n\r";
    
    	}
    
    
    	$email_object .= EMAIL_THANKS."\n\r";
    
    
    	mail($com->email,$email_subject,$email_object,"FROM:$support");		
    
    
    }

    Bonjour et merci encore pour vos précieux conseils et précieuses solutions à mes divers problèmes (Willy et Paulanna).

    Je viens de tester, mais j'ai une erreur qui semble être minime, je recherche et si je ne trouve pas je vous demanderai.

    Très cordialement,

    Balam


  10. Expliquez ce que vous voulez et je vous dirais :)

    Vous voulez que des produits soient choisis aléatoirement et affichés sur la page d'accueil de la même manière les produits spéciaux (case doit apparaitre en page d'accueil cochées dans le back office) par exemple ?

    Si oui ajoute cette fonction dans modeles/default/template.php

    function print_aleatoire() {
    
    
    	/* Affiche la liste des cat&eacute;gories qui sont sp&eacute;ciales */
    
    	global $wwwroot, $repertoire_modele,  $repertoire_images, $repertoire_upload;
    
    
    
    	$sql = "SELECT p.id	FROM peel_produits p WHERE p.etat = '1' ORDER BY RAND() LIMIT 30";
    
    
    	$qid = mysql_query($sql) or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	if (mysql_num_rows($qid) > 0) { 
    
    
    	$nb_cellules = mysql_num_rows($qid);
    
    
    	$nb_colonnes = 1;
    
    
    	echo "<p><table align=\"center\" border=\"0\" cellspacing=\"0\" cellpadding=\"5\" width=\"100%\">";
    
    
    	echo "<tr><td colspan=".$nb_colonnes." class=\"entete\"><img src=\"images/fleche.gif\" />&nbsp;".SELECTION."</td></tr>";
    
    
    			$j = 0;
    
    
    			while ($prod = mysql_fetch_array($qid)) 
    
    			{
    
    
    			if ( $j % $nb_colonnes == 0 ) {	echo "<tr valign=top>";	}
    
    
    			if($j % $nb_colonnes !=0 OR $j % $nb_colonnes == 0 ) {
    
    
    			// on affiche une cellule
    
    			if ( $j % $nb_colonnes == 0 OR $j == $nb_cellules ) { echo "<td class=\"newsCelluleOne\" width=\"50%\">"; } else { echo "<td class=\"newsCelluleTwo\" width=\"50%\">"; }
    
    
    			template_index_produit($prod['id'],$where = " ", $form = "special");
    
    
    			} 
    
    			echo "</td>";
    
    
    			$j++;	
    
    
    			if ( $j % $nb_colonnes == 0 OR $j == $nb_cellules ) {
    
    			echo "</tr>";
    
    			}
    
    
    			} 
    
    
    	echo "</table></p>";
    
    
    	}
    
    
    }

    Tu peux modifier le "LIMIT 30" et mettre le nombre de produits que tu veux en résultat.

    Ensuite dans ton index.php, apres "print_categorie();", ajoute "print_aleatoire(); "

    Dis nous si c'est OK ?

    Willy

    Bonjour Willy,

    Merci pour ce bout de code cela fonctionne à merveille.

    Merci

    Balam


  11. Je crois que Paulanna est plus un Saint qu'une Sainte :)

    Bon est bien vous êtes deux saints (origine du nom ou mot paulanna)

    Message pour le sieur OLCH

    bonjour,

    Il faut que tu regardes dans ton Back office

    après: configuration boutique

    puis: Types de paiement

    Regarge la façon dont est écrit le mot chèque, car il doit ête comme cela exactement (Chèque).

    Il faut faire attention aux modifications que tu va faire parceque souvent cela faitdes erreurs lorsque l'on ne connait pas le php.

    Fait attention si tu est en local ou sur un serveur.

    Enfin moi je ne rencontre aucun problème avec peel, j'en suis satisfait.

    Le problème avec le mail viens d'une erreur de ma part.

    Cordialement,

    Balam


  12. Contact mr Ruault alors, car là je ne vois pas...

    Willy

    Merci à tous pour votre patience et votre gentillesse. Je clos ce topic.

    Merci plus particulièrement a Paulanna :) (une sainte) et à Willy pour leurs services.

    Le problème venait d'un accent mal mis sur le mot chèque et la majuscule.

    Mille bravos et mille mercis

    Loué soit les Paulanna et Willy (M. Pruault aussi)

    Balam


  13. Le code que j'ai redonné plus haut est bon lui.

    Apres s'il y a eu des changement dans le fichier de langue ou dans la gestion des paiements...

    Il faut tout nosu dire sinon on passe des heures à chercher et apres on apprend que tu es en local ou chez free ou que tu as changé ceck en cheque...

    Willy

    Willy,

    L'installation a été faite par M.Pruault.

    La version du script est premium 3.8

    Il y a eu l'installation du module referencement et module pour paiement cb ssl (pûisque je suis en https pour le paiement cb)

    L'herbergement est Privianet, j'y suis depuis 3 ans sans problème)


  14. Voila le fin_commade de olch:

    <?
    
    include("../configuration.inc.php");
    
    necessite_identification();
    
    
    /* Test pour empêcher d'arriver ici par hasard ou en tapant l'url */
    
    $caddie_est_vide = $_SESSION['caddie']->compte_elements() == 0;
    
    
    $commande = charge_commande();
    
    
    if ($caddie_est_vide || ! $commande) {
    
    header("Location: $wwwroot");
    
    die;
    
    }
    
    
    /* Création de la commande dans la base, autorise alors le paiement
    
    * et informe le client que la commande est ok
    
    */
    
    $commandeid = cree_commande($commande);
    
    
    $DOC_TITLE = "[PEEL.FR]";
    
    
    $modele_a_montrer = "affichage_fin_succes()"; 
    
    
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    
    
    $_SESSION['caddie']->init();
    
    
    vide_commandeinfo();
    
    
    unset ($_SESSION['wantsurl']);
    
    include("$repertoire_modele/haut.php");
    
    eval($modele_a_montrer.";");
    
    
    include("$repertoire_modele/bas.php");
    
    
    /******************************************************************************
    
    * FONCTIONS
    
    *****************************************************************************/
    
    function affichage_fin_succes() {
    
    global $commandeid;
    
    global $wwwroot; 
    
    global $paypal;
    
    global $site;
    
    global $support;
    
    
    $result = mysql_query("SELECT * FROM peel_commandes WHERE id ='".$commandeid."'");
    
    
    $com = mysql_fetch_object($result);
    
    
    $message = "La commande $commandeid vient d'être enregistrée sur le site $site";
    
    $message .= "\n\r";
    
    $message .= "Email client : ".$com->email;
    
    $message .= "\n\r";
    
    $message .= "Référence commande : ".$com->id;
    
    $message .= "\n\r";
    
    $message .= "Montant de la commande : ".fprix($com->montant)." EUR";
    
    $message .= "\n\r";
    
    $message .= "Date de la commande : ".return_date_fr($com->o_timestamp);
    
    $message .= "\n\r";
    
    $message .= "Paiement : ".$com->paiement;
    
    $message .= "\n\r";
    
    $message .= "Merci de consulter l'interface d'administration de votre site.";
    
    
    mail($support,"[$site] Enregistrement de la commande $commandeid",$message,"FROM:$support");
    
    
    ?>
    
    <font class="entete"><?echo STEP3 ?></font>
    
    <p></p>
    
    
    <div class="normal">
    
    <?php
    
    
    echo MSG_THANKS;
    
    
    switch ($com->paiement) {
    
    
    case html_entity_decode(CHECK) :
    
    
    email_commande($commandeid);
    
    
    ?>
    
    <p>
    
    - <?echo PRINT_PROFORMA?></p>
    
    <p>
    
    - <?echo SEND_CHECK ?> :
    
    <?php
    
    print_societe();
    
    
    echo "</p>";
    
    
    break;
    
    
    case html_entity_decode(TRANSFER) :
    
    
    email_commande($commandeid);
    
    
    echo nl2br(SEND_TRANSFER);
    
    
    print_rib();
    
    
    break;
    
    
    case html_entity_decode(PAYPAL) :
    
    
    ?>
    
    <div align="center">
    
    Pour r&eacute;gler par carte bancaire, cliquez ici :<br />
    
    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
    
    <INPUT TYPE="hidden" NAME="cmd" VALUE="_ext-enter">
    
    <INPUT TYPE="hidden" NAME="redirect_cmd" VALUE="_xclick">
    
    <input type="hidden" name="business" value="<?=$paypal?>">
    
    <input type="hidden" name="item_name" value="<?=$site?> COMMANDE <?=$commandeid?>">
    
    <input type="hidden" name="item_number" value="<?=$commandeid?>">
    
    <input type="hidden" name="amount" value="<?echo number_format($com->montant,2);?>">
    
    <input type="hidden" name="page_style" value="Primary">
    
    <input type="hidden" name="no_shipping" value="1">
    
    <input type="hidden" name="return" value="<?=$wwwroot?>/modules/paypal/ok.php?id=<?=$commandeid?>">
    
    <input type="hidden" name="cancel_return" value="<?=$wwwroot?>/modules/paypal/nok.php?id=<?=$commandeid?>">
    
    <input type="hidden" name="no_note" value="1">
    
    <input type="hidden" name="currency_code" value="EUR">
    
    <input type="hidden" name="lc" value="FR">
    
    <input TYPE="hidden" NAME="email" VALUE="<?=$com->email?>">
    
    <input type="image" src="https://www.paypal.com/fr_FR/i/btn/x-click-but23.gif" border="0" name="submit" alt="Effectuez vos paiements via PayPal : une solution rapide, gratuite et sécurisée !">
    
    </form>
    
    <br>
    
    <img src="<?=$wwwroot?>/images/logo-xclickBox.gif" width="152" height="29" alt="" border="0">
    
    </div>
    
    <?
    
    break;
    
    }
    
    
    ?>
    
    <table class=normal width="100%" border="0" cellspacing="0" cellpadding="4" bgcolor="#ffffcc">
    
    <tr><td class="label"><?echo ORDER_RESUME ?> :</td></tr>
    
    <tr>
    
    <td class="label"><?echo EMAIL ?> :</td>
    
    <td class="normal"><?=$com->email?></td>
    
    </tr>
    
    <tr>
    
    <td class="label"><?echo REFERENCE ?> :</td>
    
    <td class="normal"><?=$commandeid?></td>
    
    </tr>
    
    <tr>
    
    <td class="label"><?echo ORDER_AMOUNT ?> :</td>
    
    <td class="normal"><?=fprix($com->montant)?> &euro;</td>
    
    </tr>
    
    <tr>
    
    <td class="label"><?echo ORDER_DATE ?> :</td>
    
    <td class="normal"><?=return_date_fr($com->o_timestamp)?></td>
    
    </tr>
    
    <tr>
    
    <td class="label"><?echo PAYEMENT ?> :</td>
    
    <td class="normal"><?=$com->paiement?></td>
    
    </tr>
    
    <tr>
    
    <td class="label"><?echo PROFORMA ?> :</td>
    
    <td class="normal"><a href="java script:OpenWin2('<?=$wwwroot?>/factures/facture_html.php?mode=proforma&id=<?=$commandeid?>&timestamp=<?=urlencode($com->o_timestamp)?>',550,450,'bdc');" class="normal">
    
    <?echo PRINT_PROFORMA?></a>.</td>
    
    </tr>
    
    </table>
    
    <?php } ?>

    Oui est bien cela ne fonctionne pas.


  15. Balam: regarde plus haut (page 2 je crois) un forumeur a mis son code de fin_commande...

    tu auras les lignes a ajouter.

    Willy

    Punaise, cela fait une semaine que je cherche la solution pour ce problème et je ne parviens plus à voir clairement.

    Est-ce les codes là ?

    Parce que je n'arrive pas à les mettrent sur la page.


  16. bonjour,

    Oui en effet, si vous avez une soluce pour cela je suis preneur.

    Cordialement,

    Balam

    Est-ce ces fonctions qu'il faut placer dans la page fin_commande.php ?, si oui à quel endroit exactement ?

    case "mandat" :

    ?>

    - Imprimez le bon de commande.<br />

    <br />

    - Envoyez votre règlement à :<br />

    <?php

    print_societe();

    break;

    case "chèque" :

    ?>

    - Imprimez le bon de commande.<br />

    <br />

    - Envoyez votre règlement à :<br />

    <?php

    print_societe();

    break;

    case "virement" :

    print ("- Effectuez votre règlement sur le compte bancaire suivant :<br />");

    print_rib();

    break;


  17. Pas sûr car dans ma versin (2.9), la fonction d'envoi de mail de la page fonciton.php n'est pas forcément appelée, et l'envoi des mails est le plus souvent géré directement dans la page fin_commande.php.

    Je pense qu'il faut donc vérifier dans cette page.

    Tu dois trouver des blocs :

    CASE CHECK

    CASE TRANSFER

    CASE CB

    CASE PAYPAL

    Il faut voir ce qui se trouve dans ces blocs te voir si l'envoi des mails n'y est pas directement géré.

    Bonjour Merci de votre à vous tous.

    J'ai bien CASE CB mais pas les autres dans le fichier fin_commande.php

Twitter Advisto ecommerce

Facebook PEEL Shopping