par
Denis75018 » 10 févr. 2015, 12:03
Bonjour A vous tous,
J'aimerais vous soumettre mon soucis pour que vous puissiez m'aider à le résoudre.
Je dois vérifier si un "produit" est déjà présent dans une table (Table1).
Si non : Je l'affiche dans un "select form".
Si oui je cherche un produit de même spécificités dont le rang est supérieur (+1)
Si ce nouveau produit dont le "rang" est "+1" :
- n'existe pas je revois "0" (zéro) pour ne rien afficher dans le "Select form" (Pas de produit en "rang" supérieur)
- existe je le repasse à la moulinette pour refaire des tests.
Il renvois bien dans la moulinette, et si pas présent dans la "Table1" il "return" l'identifiant mais "l'appel à la fonction" ne le prend pas en compte.
Je vous met ce que j'ai fait.
Mon appel à la fonction :
$idProd=RechSiAjoute($id_prod, $id_pers);
if ($idProd!=0)
{
// On affiche le résultat dans un "SELECT"
}
else {
// on fait rien !
}
Ma fonction :
function RechSiAjoute($id_prod, $id_pers)
{
// on regarde si "id_prod" est déjà présent dans "TABLE1" :
$sProd = "SELECT * FROM $Table1 WHERE (id_prod='".$id_prod."') AND (id_pers='".$id_pers."') AND (provient='cure')";
$rsProd = mysql_query($sProd)or die ('ERREUR : '.$sProd.' '.mysql_error());
$ersProd = mysql_fetch_array($rsProd);
if ($ersProd[0] == 0)
{
// Si NON PRESENT : on retourne l'id_prod pour l'afficher
return $id_prod;
}
else
{
// Si PRESENT : on recherche un nouveau "ID Produit"
$sProd2 = "SELECT * FROM $Table2 WHERE (id_prod='".$id_prod."') ";
$rsProd2 = mysql_query($sProd2)or die ('ERREUR : '.$sProd2.' '.mysql_error());
$ersProd2 = mysql_fetch_array($rsProd2);
// Avec des specificités précises
$rang=$ersProd2['rang'];
$specs=$ersProd2['specs'];
// Et dont le "RANG " est suppérieur (+1)
$rang2=$rang+1;
// Et on recherche dans la "Table2" si ce nouveau Produit (+1) existe :
$sProd3 = "SELECT * FROM $Table2 WHERE (specs='".$specs."') AND (rang='".$rang2."') ";
$rsProd3 = mysql_query($sProd3)or die ('ERREUR : '.$sProd3.' '.mysql_error());
$ersProd3 = mysql_fetch_array($rsProd3);
if ($ersProd3[0] == 0)
{
//Si il n'existe pas on renvois '0' (zero) pour ne rien afficher
return '0';
}
else
{
// Si ce nouveau produit (+1) existe on le repasse dans la moulinette.
$Newid_prod=$ersProd3['id_prod'];
RechSiAjoute($Newid_prod, $id_pers) ;
}
}
}
Auriez vous une idée ?
Merci de votre aide.
Denis.