Stock pour shopping

14 messages dans ce sujet

Posté(e) · Signaler ce message

Quelqu'un a t il compilé cette application afin que je la mette à disposition en téléchargement pour tous

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Il y a un debut de réponse ici:

http://forum.peel.fr/index.php?showtopic=888

Je pense qu'Aquerelle sera OK pour la diffusion, car ce script a été dev avec l'aide d'autres forumeurs aussi :D

Willy

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Il y a un debut de réponse ici:

http://forum.peel.fr/index.php?showtopic=888

Je pense qu'Aquerelle sera OK pour la diffusion, car ce script a été dev avec l'aide d'autres forumeurs aussi :D

Willy

Pas de probléme, mais il faudrait trouver le code pour ne pas ajouter au caddie plus que le stock, moi je suis limité en php , j'apprend en me plongeant dans le code peel, sans avoir appris les bases auparavant.

:D :wub:

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

j'ai développé le meme genre de systeme mais avec gestion du stock dans la page produit et non pas dans une page externe.

J'avais fait des modifs des requetes pour voir si le produit avait du stock et n'afficher dans les listes déroulantes que la quantité disponible.

Par contre j'avais aussi buter sur le systeme d'ajout.

Mais j'avais mis en place un systeme qui supprime du stock auto apres vente et qui tiens au courant l'admin des que le stock est à zero.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

j'ai développé le meme genre de systeme mais avec gestion du stock dans la page produit et non pas dans une page externe.

J'avais fait des modifs des requetes pour voir si le produit avait du stock et n'afficher dans les listes déroulantes que la quantité disponible.

Par contre j'avais aussi buter sur le systeme d'ajout.

Mais j'avais mis en place un systeme qui supprime du stock auto apres vente et qui tiens au courant l'admin des que le stock est à zero.

Maintenant que l'on sait "ne pas commander plus que le stock", il serait interessant de voir ton script au niveau de administrer/produits.php, pour gérer aussi à ce niveau et pourquoi pas faire cohabiter les 2 façons

Qu'en penses tu ?

Nouveau produit==> fiche produit=>stock

Mise à jour de plusieurs produits ==>sur une page a part

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Ci-joint les modifications dans administrer/produits.php pour le stock à partir des fiches produits

Ajouter ce qui suit vers ligne 348

<tr>

<td class="normal">Quantité en stock:</td>

<td class="normal">

<input type="texte" name="stock" value="<?php echo vb($frm['stock']) ?>" style="width: 60%" class="formulaire1" />

</td>

</tr>

Puis

Modifier la fonction insere_produit par

valide($frm['on_special']);

valide($frm['etat']);

$nom = addSlashes($frm['nom']);

$description = addSlashes($frm['description']);

$descriptif = addSlashes($frm['descriptif']);

/*ajoute le produit dans la table produits */

$qid = mysql_query("

INSERT INTO peel_produits (

reference

, nom

, description

, prix

, descriptif

, image1

, image2

, image3

, image4

, pdf

, lang

, promotion

, stock

, tva

, etat

, date_insere

, date_maj

, on_special)

VALUES (

'$frm[reference]'

, '$nom'

, '$description'

, '$frm[prix]'

, '$descriptif'

, '$img1'

, '$img2'

, '$img3'

, '$img4'

, '$pdf'

, 'fr'

, '$frm[promotion]'

, '$frm[stock]'

, '$frm[tva]'

, '$frm[etat]'

, now()

, now()

, '$frm[on_special]')

");

Et modifier la fonction maj_produit par

valide($frm['on_special']);

$nom = addSlashes($frm['nom']);

$description = addSlashes($frm['description']);

$descriptif = addSlashes($frm['descriptif']);

/* Met à jour la table produits */

$qid = mysql_query("

UPDATE peel_produits SET

reference = '$frm[reference]'

,nom = '$nom'

,description = '$description'

,prix = '$frm[prix]'

,descriptif = '$descriptif'

,image1 = '$img1'

,image2 = '$img2'

,image3 = '$img3'

,image4 = '$img4'

,pdf = '$pdf'

,lang = 'fr'

,promotion = '$frm[promotion]'

,stock = '$frm[stock]'

,tva = '$frm[tva]'

,etat = '$frm[etat]'

,date_maj = now()

,on_special = '$frm[on_special]'

WHERE id = $id

");

A partir de là on peut gérer la quantité en stock dans les deux pages (produits et stock) comme recherché

Cdlt

Fabrice

www.etroc-mode.fr

Maintenant que l'on sait "ne pas commander plus que le stock", il serait interessant de voir ton script au niveau de administrer/produits.php, pour gérer aussi à ce niveau et pourquoi pas faire cohabiter les 2 façons

Qu'en penses tu ?

Nouveau produit==> fiche produit=>stock

Mise à jour de plusieurs produits ==>sur une page a part

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Ci-joint les modifications dans administrer/produits.php pour le stock à partir des fiches produits

Ajouter ce qui suit vers ligne 348

<tr>

<td class="normal">Quantité en stock:</td>

<td class="normal">

<input type="texte" name="stock" value="<?php echo vb($frm['stock']) ?>" style="width: 60%" class="formulaire1" />

</td>

</tr>

Puis

Modifier la fonction insere_produit par

valide($frm['on_special']);

valide($frm['etat']);

$nom = addSlashes($frm['nom']);

$description = addSlashes($frm['description']);

$descriptif = addSlashes($frm['descriptif']);

/*ajoute le produit dans la table produits */

$qid = mysql_query("

INSERT INTO peel_produits (

reference

, nom

, description

, prix

, descriptif

, image1

, image2

, image3

, image4

, pdf

, lang

, promotion

, stock

, tva

, etat

, date_insere

, date_maj

, on_special)

VALUES (

'$frm[reference]'

, '$nom'

, '$description'

, '$frm[prix]'

, '$descriptif'

, '$img1'

, '$img2'

, '$img3'

, '$img4'

, '$pdf'

, 'fr'

, '$frm[promotion]'

, '$frm[stock]'

, '$frm[tva]'

, '$frm[etat]'

, now()

, now()

, '$frm[on_special]')

");

Et modifier la fonction maj_produit par

valide($frm['on_special']);

$nom = addSlashes($frm['nom']);

$description = addSlashes($frm['description']);

$descriptif = addSlashes($frm['descriptif']);

/* Met à jour la table produits */

$qid = mysql_query("

UPDATE peel_produits SET

reference = '$frm[reference]'

,nom = '$nom'

,description = '$description'

,prix = '$frm[prix]'

,descriptif = '$descriptif'

,image1 = '$img1'

,image2 = '$img2'

,image3 = '$img3'

,image4 = '$img4'

,pdf = '$pdf'

,lang = 'fr'

,promotion = '$frm[promotion]'

,stock = '$frm[stock]'

,tva = '$frm[tva]'

,etat = '$frm[etat]'

,date_maj = now()

,on_special = '$frm[on_special]'

WHERE id = $id

");

A partir de là on peut gérer la quantité en stock dans les deux pages (produits et stock) comme recherché

Cdlt

Fabrice

www.etroc-mode.fr

Testé en local=>super; j'ai les 2 façons :D

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

pour enlever le stock commander, changer la fonction creer_commande dans fonctios.php par ceci

function cree_commande(&$commande) {

// Enregistre la commande dans la base 


	global $normal;

	global $express;

	global $site;

	global $support;

	global $wwwroot;



	// Constuit les infos du client en une chaîne

	// Addresse de facturation

	$client_info1 =

		 $commande['client1']."\n"

		.$commande['adresse1']."\n"

		.$commande['code_postal1']."\n"

		.$commande['ville1']."\n"

		.$commande['pays1']."\n"

		.$commande['contact1']."\n"

		.$commande['email1']."\n";


	// Addresse de livraison

	$client_info2 =

		 $commande['client2']."\n"

		.$commande['adresse2']."\n"

		.$commande['code_postal2']."\n"

		.$commande['ville2']."\n"

		.$commande['pays2']."\n"

		.$commande['contact2']."\n"

		.$commande['email2']."\n";	


	// Calcul le panier total T.T.C

	$caddie_total = $_SESSION['caddie']->total + $_SESSION['caddie']->cout_transport;


	$sql = "

	INSERT INTO peel_commandes (

		email

		,id_utilisateur

		, o_timestamp

		, statut

		, statut_details

		, client_info1

		, client_info2

		, commentaires

		, montant

		, paiement

		, transport

		, cout_transport

	) VALUES (

		 '{$_SESSION['utilisateur']['email']}'

		,'{$_SESSION['utilisateur']['id_utilisateur']}'

		,now()

		,1

		,'attente de r&egrave;glement'

		,'".addslashes($client_info1)."'

		,'".addslashes($client_info2)."'

		,'".addslashes($commande['commentaires'])."'

		,'".$caddie_total."'

		,'".$_SESSION['caddie']->paiement."'

		,'".$_SESSION['caddie']->transport."'

		,'".$_SESSION['caddie']->cout_transport."'

	)";


	$qid = mysql_query($sql);


	$commandeid = mysql_insert_id();


	/* ajout des articles à la table commandes_articles */

	$qid = recupere_articles_caddie();


	if ($qid) {


		if (mysql_num_rows($qid) > 0) {


			while ($article = mysql_fetch_array($qid)) {


				$prix = $article['prix'] * (1-$article['promotion']/100);


				$requete = 	"INSERT INTO peel_commandes_articles (

					commande_id, produit_id, nom_produit, prix, quantite, promotion, tva

				) VALUES (

					 '$commandeid'

					,'".$article['id']."'

					,'".addslashes($article['nom'])."'

					,'".$prix."'

					,'".$_SESSION['caddie']->articles[$article['id']]."'

					,'".$article['promotion']."'

					,'".$article['tva']."'

				)";

				mysql_query($requete);	



				$st = mysql_fetch_array(mysql_query("SELECT stock FROM  peel_produits WHERE id = '".$article['id']."'"));



				$stock = $st['stock'] - $_SESSION['caddie']->articles[$article['id']];


				if ($stock >= 0) { $stock_à_update = $stock; } else {	$stock_à_update = 0;	}

				if ($stock <= 0) 

				{


				// Mail à l'adresse de l'admin pour recharger le stock


				$Stock_a_zero = "Attention: Le produit '".addslashes($article['nom'])."' n'as plus de stock"; 

				mail($support,

				"Alerte Stock",

				$Stock_a_zero,

				"FROM:$support");

				// on fera ensuite une propriété en ligne ou non quand pas en stock

				$requete_non_online = 	"UPDATE peel_produits SET etat = 0 WHERE id = '".$article['id']."'";

				mysql_query($requete_non_online);	

				}


				$requete_stock = 	"UPDATE peel_produits SET stock = $stock_à_update WHERE id = '".$article['id']."'";

				mysql_query($requete_stock);	




			}

		}

	}


	return $commandeid;

}

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

pour enlever le stock commander, changer la fonction creer_commande dans fonctios.php par ceci

function cree_commande(&$commande) {

// Enregistre la commande dans la base 


	global $normal;

	global $express;

	global $site;

	global $support;

	global $wwwroot;



	// Constuit les infos du client en une chaîne

	// Addresse de facturation

	$client_info1 =

		 $commande['client1']."\n"

		.$commande['adresse1']."\n"

		.$commande['code_postal1']."\n"

		.$commande['ville1']."\n"

		.$commande['pays1']."\n"

		.$commande['contact1']."\n"

		.$commande['email1']."\n";


	// Addresse de livraison

	$client_info2 =

		 $commande['client2']."\n"

		.$commande['adresse2']."\n"

		.$commande['code_postal2']."\n"

		.$commande['ville2']."\n"

		.$commande['pays2']."\n"

		.$commande['contact2']."\n"

		.$commande['email2']."\n";	


	// Calcul le panier total T.T.C

	$caddie_total = $_SESSION['caddie']->total + $_SESSION['caddie']->cout_transport;


	$sql = "

	INSERT INTO peel_commandes (

		email

		,id_utilisateur

		, o_timestamp

		, statut

		, statut_details

		, client_info1

		, client_info2

		, commentaires

		, montant

		, paiement

		, transport

		, cout_transport

	) VALUES (

		 '{$_SESSION['utilisateur']['email']}'

		,'{$_SESSION['utilisateur']['id_utilisateur']}'

		,now()

		,1

		,'attente de r&egrave;glement'

		,'".addslashes($client_info1)."'

		,'".addslashes($client_info2)."'

		,'".addslashes($commande['commentaires'])."'

		,'".$caddie_total."'

		,'".$_SESSION['caddie']->paiement."'

		,'".$_SESSION['caddie']->transport."'

		,'".$_SESSION['caddie']->cout_transport."'

	)";


	$qid = mysql_query($sql);


	$commandeid = mysql_insert_id();


	/* ajout des articles à la table commandes_articles */

	$qid = recupere_articles_caddie();


	if ($qid) {


		if (mysql_num_rows($qid) > 0) {


			while ($article = mysql_fetch_array($qid)) {


				$prix = $article['prix'] * (1-$article['promotion']/100);


				$requete = 	"INSERT INTO peel_commandes_articles (

					commande_id, produit_id, nom_produit, prix, quantite, promotion, tva

				) VALUES (

					 '$commandeid'

					,'".$article['id']."'

					,'".addslashes($article['nom'])."'

					,'".$prix."'

					,'".$_SESSION['caddie']->articles[$article['id']]."'

					,'".$article['promotion']."'

					,'".$article['tva']."'

				)";

				mysql_query($requete);	



				$st = mysql_fetch_array(mysql_query("SELECT stock FROM  peel_produits WHERE id = '".$article['id']."'"));



				$stock = $st['stock'] - $_SESSION['caddie']->articles[$article['id']];


				if ($stock >= 0) { $stock_à_update = $stock; } else {	$stock_à_update = 0;	}

				if ($stock <= 0) 

				{


				// Mail à l'adresse de l'admin pour recharger le stock


				$Stock_a_zero = "Attention: Le produit '".addslashes($article['nom'])."' n'as plus de stock"; 

				mail($support,

				"Alerte Stock",

				$Stock_a_zero,

				"FROM:$support");

				// on fera ensuite une propriété en ligne ou non quand pas en stock

				$requete_non_online = 	"UPDATE peel_produits SET etat = 0 WHERE id = '".$article['id']."'";

				mysql_query($requete_non_online);	

				}


				$requete_stock = 	"UPDATE peel_produits SET stock = $stock_à_update WHERE id = '".$article['id']."'";

				mysql_query($requete_stock);	


			}

		}

	}


	return $commandeid;

}

Bon travail, j'ai testé en local tout fonctionne.

Moi je remettais seulement le stock à jour, sans alerte email et je laissais le produit en ligne :D :wub:

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

C'est donc pret à être repris par mr Ruault ?

Willy

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

pas encore, il faut référencé les manips à faire!

et puisque nous y sommes, mettre à jour toutes les erreurs déjà référencées depuis la 2.9.3

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

atila, si tu a besoin du site de test pour tester le stock,

alors ne te gènne pas !!

c'est ma petite contrib...

à bientôt...

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

à toi je te l'implementerai sans probleme !petit malin :D

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

je suis comme toi en ce moment c'est le boom !!

quand j'ai le temps je le fait moi même !!

et tu connais mon point de vue sur l'histoire du stock et les faux acheteurs !!

à bientôt yoh...

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping