168 lines
4.7 KiB
PHP
168 lines
4.7 KiB
PHP
<?php
|
|
if (!defined("LIBLISTEFOURNISSEURS_INC")){
|
|
define(LIBLISTEFOURNISSEURS_INC,1);
|
|
|
|
/*
|
|
* fonction permettant de savoir de quelle famille
|
|
* de produit est charger l'acheteur actuel
|
|
*/
|
|
|
|
class ListeFournisseurs {
|
|
var $_fournisseurs;
|
|
var $_fournisseursIdx;
|
|
var $_familleId;
|
|
var $_familleName;
|
|
|
|
function ListeFournisseurs($acheteurID){
|
|
$this->_fournisseurs=array();
|
|
$this->_fournisseursIdx=0;
|
|
$this->_familleId=-1;
|
|
$this->_familleName="Aucune famille de produit trouvée";
|
|
$this->setFamilleFromAcheteur($acheteurID);
|
|
$this->loadList();
|
|
}
|
|
|
|
function setFamilleFromAcheteur($acheteurID){
|
|
$connexion = @mysql_connect(SQL_SERVER,SQL_USER,SQL_PASSWD);
|
|
if ($connexion){
|
|
// preparation de la requete :
|
|
$requete="SELECT reference_fam,nom_fam "
|
|
."FROM Famille_de_produit "
|
|
."WHERE id_acheteur='$acheteurID' "
|
|
."ORDER BY id_acheteur LIMIT 0,1";
|
|
// envoie de la requete
|
|
$resultat=mysql_db_query(SQL_BASE,$requete,$connexion)
|
|
or die($requete.":".mysql_error($connexion));
|
|
$row = mysql_fetch_object($resultat);
|
|
$this->_familleId=$row->reference_fam;
|
|
$this->_familleName=$row->nom_fam;
|
|
mysql_close($connexion);
|
|
} else {
|
|
mysql_error($connexion);
|
|
}
|
|
}
|
|
|
|
function ajouteFournisseur($id,$nom, $adresse,$famille,
|
|
$tel, $fax, $siret, $siren)
|
|
{
|
|
//TODO: escaper les valeurs
|
|
$connexion = @mysql_connect(SQL_SERVER,SQL_USER,SQL_PASSWD);
|
|
if ($connexion){
|
|
$requete="INSERT INTO Fournisseur "
|
|
."(id_fournisseur,nom,adresse,telephone,fax,SIRET,"
|
|
."SIREN,reference_fam) "
|
|
."VALUES ('$id','$nom','$adresse','$tel','$fax','$SIRET',"
|
|
."'$SIREN','$famille')";
|
|
$result=mysql_db_query(SQL_BASE,$requete,$connexion);
|
|
if (!$result){
|
|
print "<span class='bad'>\nErreur :";
|
|
print mysql_error($connexion);
|
|
print "\n</span>\n";
|
|
}
|
|
} else {
|
|
mysql_error($connexion);
|
|
}
|
|
mysql_close($connexion);
|
|
$this->loadList();
|
|
}
|
|
|
|
function supprimeFournisseur($ids){
|
|
// on cherche les lignes selectionnees pour la suppression
|
|
//on supprime aussi les produits du fournisseur...
|
|
if (count($ids)>0){
|
|
$connexion = @mysql_connect(SQL_SERVER,SQL_USER,SQL_PASSWD);
|
|
if ($connexion){
|
|
while( list($case,$val) = each($ids) ){
|
|
// on supprime les lignes selectionnees
|
|
$requete="DELETE FROM ProduitFour "
|
|
."WHERE id_fournisseur='$val' ";
|
|
$resultat=mysql_db_query(SQL_BASE,$requete,$connexion);
|
|
if(!$resultat){
|
|
print mysql_error($connexion);
|
|
}
|
|
|
|
$requete="DELETE FROM Fournisseur "
|
|
."WHERE id_fournisseur='$val' "
|
|
."AND reference_fam='".$this->_familleId."'";
|
|
$resultat=mysql_db_query(SQL_BASE,$requete,$connexion);
|
|
if(!$resultat){
|
|
print mysql_error($connexion);
|
|
}
|
|
}
|
|
mysql_close($connexion);
|
|
} // connexion
|
|
} // count
|
|
$this->loadList();
|
|
}
|
|
|
|
function loadList(){
|
|
// charge la liste des fournisseurs
|
|
$connexion = @mysql_connect(SQL_SERVER,SQL_USER,SQL_PASSWD);
|
|
if ($connexion){
|
|
// preparation de la requete :
|
|
$requete="SELECT * "
|
|
."FROM Fournisseur "
|
|
."WHERE reference_fam='".$this->_familleId."' "
|
|
."ORDER BY id_fournisseur";
|
|
// envoie de la requete
|
|
$resultat=mysql_db_query(SQL_BASE,$requete,$connexion)
|
|
or die($requete.":".mysql_error($connexion));
|
|
$this->_fournisseurs=array();
|
|
$this->_fournisseursIdx=0;
|
|
while($row = mysql_fetch_object($resultat)){
|
|
$four=new Fournisseur(
|
|
$row->id_fournisseur,
|
|
$row->nom,
|
|
$row->adresse,
|
|
$row->reference_fam,
|
|
$row->telephone,
|
|
$row->fax,
|
|
$row->SIRET,
|
|
$row->SIREN
|
|
);
|
|
$this->_fournisseurs[$this->_fournisseursIdx]=$four;
|
|
$this->_fournisseursIdx+=1;
|
|
}
|
|
mysql_close($connexion);
|
|
} else {
|
|
mysql_error($connexion);
|
|
}
|
|
|
|
}
|
|
|
|
function toHTML($editable=0){
|
|
$content="";
|
|
if (!$editable){
|
|
$content.="<select name=\"fournisseur\">\n";
|
|
}
|
|
for ($i=0;$i<$this->_fournisseursIdx;$i++){
|
|
if ($editable) {
|
|
$content.="<p class=\"ligne".($i%2)."\" />\n";
|
|
$content.=$this->_fournisseurs[$i]->toHTML();
|
|
$content.="\n</p>\n";
|
|
} else {
|
|
$content.="<option "
|
|
."value=\"".$this->_fournisseurs[$i]->_id."\" "
|
|
.">";
|
|
$content.=$this->_fournisseurs[$i]->_id." - ";
|
|
$content.=$this->_fournisseurs[$i]->_nom;
|
|
$content.="</option>\n";
|
|
}
|
|
}
|
|
if (!$editable){
|
|
$content.="</select>\n";
|
|
} else {
|
|
if (count($this->_fournisseurs)>0){
|
|
$content.="<input type=\"submit\" "
|
|
."id=\"action\" "
|
|
."name=\"action\" "
|
|
."value=\"Supprimer\" "
|
|
."/>\n";
|
|
}
|
|
}
|
|
return $content;
|
|
}
|
|
}
|
|
|
|
}
|
|
?>
|