Jump to content

maj automatique des fiches articles


Recommended Posts

Bonjour

je voudrais activer les acticles en fonction du stock, ou inserer mon code de maj

UPDATE ps_product SET ps_product.active = 0
WHERE (((ps_product.quantity)=0));
UPDATE ps_product SET ps_product.active = 1
WHERE (((ps_product.quantity)>0));

pour m'éviter de le faire à la main dans phpmyadmin

merci

Patrick

Link to comment
Share on other sites

Bonsoir,

Il faut mettre ça dans un fichier php. Voici les étapes

1/ Création du fichier

Nom Fichier : traitementDB.php
contenu :
<?php
mysql_connect("AdresseServeurBDD", "NomUtilisateurMySQL", "motDePasseMySQL");
mysql_select_db("NomBaseDeDonees");

$requete = "UPDATE ps_product SET ps_product.active = 0 WHERE (((ps_product.quantity)=0))";
mysql_query($requete);

$requete2= "UPDATE ps_product SET ps_product.active = 1 WHERE (((ps_product.quantity)>0))";
myql_query($requete2);

mysql_close();
?>

2/ le mieux est de mettre ce fichier dossier caché sur le site et faire une protection avec un htaccess

3/ accèder en ligne directement via le navigateur : http://www.nomdomain.com/dossiercache/traitementDB.php


Conseil,
je vous conseille de mettre en place une procédure de CRON ( fichier autonome qui se lance tous les jours par exemple). C'est comparable aux taches planifiées de Windows.

Le rôle de ce(s) Cron(s) de faire tous les traitements necessaires pour votre site(sauvegarde BDD, mise a jours,...)

Link to comment
Share on other sites

Ok pour le fichier ps, mais pourquoi ne pas faire plutôt un fichier sh

Faire par exemple comme le système de sauvegarde des BDD (lire cet article)


Sinon pourquoi ne pas ajouter une méthode dans la classe MySQL (fichier classes/Mysql.php)
protected function miseAjours ()
{
mysql_query(...)
}

et faire appel a cette méthode dans toutes les autres méthodes dans le même fichier et qui fait du traitement de données (getRow, getValue,...)
public function getRow($query)
{
miseAjours ();
$this->_result = false;
if ($this->_link)
if ($this->_result = mysql_query($query.' LIMIT 1', $this->_link))
{
$this->displayMySQLError($query);
return mysql_fetch_assoc($this->_result);
}
$this->displayMySQLError($query);
return false;
}

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...