J'ai fais un code pour créer une variable si condition.
Malheureusement , dès que j'arrive à la deuxième condition, cela rentre aussi dans les autres conditions.
voici ce qu'affiche le résultat.
le résultat devrait être que la création de la baliseB
j'ai essayé avec des "!empty && empty" des "isset && !isset", cela rentre toujours dans toutes les conditions.
La seule condition qui fonctionne c'est la première qui va créer seulement la BaliseB.
Mais apprès impossible de faire condition par condition.
Car dans l'affichage du résultat, les BalisesC et BaliseD ne doivent pas apparaitre, elles n'existe pas pour le moment.
Voici le fichier des functions demandées.
Merci.
<?php
// Conditions de traitement des balises reçues
// Set session variables
//$page='5';
$_SESSION["_PDT"]= $_POST['demg'];
$_SESSION["Prt"]= $_POST['prt'];
$_SESSION["Asset"]= $_POST['new-asset'];
$_SESSION["Asset-Old"]= $_POST['old-asset'];
$_SESSION["Time"]= $_POST['time'];
if (isset($_SESSION['BaliseA']))
{
//Création BaliseB
baliseAsset1();
}
if (isset($_SESSION['BaliseA'])&& isset($_SESSION['BaliseB']))
{
//Création BaliseC
baliseAsset2();
}
if (isset($_SESSION['BaliseA'])&& isset($_SESSION['BaliseB'])&& isset($_SESSION['BaliseC']))
{
//Création BaliseD
baliseAsset3();
}
?>
Malheureusement , dès que j'arrive à la deuxième condition, cela rentre aussi dans les autres conditions.
voici ce qu'affiche le résultat.
:
[DEM_PDT_PCF < AE_XXX>< TPX_1>]BaliseA
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseB créée----case NDO, DEM_PDT, PRT
[DEM_PDT_PCF < AE_XXX>< TPX_1>]BaliseA
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseB
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseC créée --case NDO, DEM_PDT, PRT
[DEM_PDT_PCF < AE_XXX>< TPX_1>]BaliseA
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseB
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseC
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseD créée___case NDO, DEM_PDT, PRT
le résultat devrait être que la création de la baliseB
[DEM_PDT_PCF < AE_XXX>< TPX_1>]BaliseA
[DEM_PDT_PCF < AE_bbbbbbbbbbbbb>< TPX_2>]BaliseB créée----case NDO, DEM_PDT, PRT
j'ai essayé avec des "!empty && empty" des "isset && !isset", cela rentre toujours dans toutes les conditions.
La seule condition qui fonctionne c'est la première qui va créer seulement la BaliseB.
Mais apprès impossible de faire condition par condition.
Car dans l'affichage du résultat, les BalisesC et BaliseD ne doivent pas apparaitre, elles n'existe pas pour le moment.
Voici le fichier des functions demandées.
<!-- //############################################################## -->
<?PHP
function BaliseAsset()
{
// $page='5';
if( !empty($_POST['demg']))
{
// Attention à ne pas oublier les break
// Oublier un break ne retourne pas d'erreur car c'est possible comme écriture
switch ($_POST['demg']) {
case 'REN':
$_SESSION["BaliseA"] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" ." " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseA']."case REN";
break;
case 'REP':
$_SESSION['BaliseA'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseA']."case REP";
break;
case 'DEM_PDT':
case 'PRT':
case 'NDO':
$_SESSION['BaliseA'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseA']."BalisA ceéée----case NDO, DEM_PDT, PRT";
break;
default:
// On peut même avoir un cas par défaut [smile]
break;
}// Fin du switch
}// Fin du IF empty
}// Fin Function
?>
<!-- ############################################################## -->
<?PHP
function baliseAsset1()
{
// $page='5';
if( !empty($_POST['demg']))
{
// Attention à ne pas oublier les break
// Oublier un break ne retourne pas d'erreur car c'est possible comme écriture
switch ($_POST['demg']) {
case 'REN':
$_SESSION["BaliseB"] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" ." " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseB']."case REN";
break;
case 'REP':
$_SESSION['BaliseB'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseB']."case REP";
break;
case 'DEM_PDT':
case 'PRT':
case 'NDO':
$_SESSION['BaliseB'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo '<br><br>'.$_SESSION['BaliseA'].'BaliseA <br>'.$_SESSION['BaliseB']."BaliseB créée----case NDO, DEM_PDT, PRT";
break;
default:
// On peut même avoir un cas par défaut [smile]
break;
}// Fin du switch
}// Fin Empty
}// Fin Function
?>
<!-- ############################################################## -->
<?PHP
function baliseAsset2()
{
// $page='5';
if( !empty($_POST['demg']))
{
// Attention à ne pas oublier les break
// Oublier un break ne retourne pas d'erreur car c'est possible comme écriture
switch ($_POST['demg']) {
case 'REN':
$_SESSION["BaliseC"] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" ." " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseC']."case REN";
break;
case 'REP':
$_SESSION['BaliseC'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseC']."case REP";
break;
case 'DEM_PDT':
case 'PRT':
case 'NDO':
$_SESSION['BaliseC'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo '<br><br>'.$_SESSION['BaliseA'].'BaliseA <br>'.$_SESSION['BaliseB'].'BaliseB <br>'.$_SESSION['BaliseC']."BaliseC créée --case NDO, DEM_PDT, PRT";
break;
default:
// On peut même avoir un cas par défaut [smile]
break;
}// Fin du switch
}// Fin Empty
}// Fin Function
?>
<!-- ############################################################## -->
<?PHP
function baliseAsset3()
{
// $page='5';
if( !empty($_POST['demg']))
{
// Attention à ne pas oublier les break
// Oublier un break ne retourne pas d'erreur car c'est possible comme écriture
switch ($_POST['demg']) {
case 'REN':
$_SESSION["BaliseD"] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" ." " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseD']."case REN";
break;
case 'REP':
$_SESSION['BaliseD'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AS_" . $_SESSION["Asset-Old"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo $_SESSION['BaliseD']."case REP";
break;
case 'DEM_PDT':
case 'PRT':
case 'NDO':
$_SESSION['BaliseD'] = "[" . $_SESSION["_PDT"] ."_" . $_SESSION['Prt'] . " " . "< AE_" . $_SESSION["Asset"] . ">" . ""."< TPX_" . $_SESSION["Time"] . ">" ."]";
echo '<br><br>'.$_SESSION['BaliseA'].'BaliseA <br>'.$_SESSION['BaliseB'].'BaliseB <br>'.$_SESSION['BaliseC'].'BaliseC <br>'.$_SESSION['BaliseD']."BaliseD créée___case NDO, DEM_PDT, PRT";
break;
default:
// On peut même avoir un cas par défaut [smile]
break;
}// Fin du switch
}// Fin Empty
}// Fin Function
?>
Merci.