Bonjour,
Voilà, moi j'vois pas de problême, mais y en a !!!!!
$ar['perm1'] = 'permission_fournisseur';
$perm = permissions('permission_fournisseur');
$ar['perm']=$perm;
if(strpos($perm,'ucd') === FALSE ){
var_dump($result);
echo "--".$result["condition_payement"]."--";
unset($result["condition_payement"]); // <----------- ligne 9
unset($result["condition"]);
}
if(strpos($perm,'w') === FALSE){
$ar['msgerr']='Modification interdite';
echo json_encode($ar);
exit();
}
if($oper == 'del'){
if(strpos($perm,'d') === FALSE ){
$ar['msgerr']='supression interdite';
echo json_encode($ar);
exit();
}
}
je veux virer l'element du tableau, j'le fais partout dans mon app, mais là, ça veut pas :D
Voilà ce que j'ai dans la console :
var_dump($result);array(42) {
["raison_sociale"]=>
string(15) "ADAM MONTMARTRE"
["adresse"]=>
string(17) "96 rue Damrémont"
["complement_adresse"]=>
string(0) ""
["adresse_autre"]=>
string(0) ""
["code_postal"]=>
string(5) "75018"
["ville"]=>
string(5) "PARIS"
["pays"]=>
string(0) ""
["telephone"]=>
string(14) "01.46.06.60.38"
["fax"]=>
string(14) "01.42.59.06.83"
["email_contact"]=>
string(25) "adam.montmartre@orange.fr"
["poste"]=>
string(11) "ACCESSOIRES"
["site_internet"]=>
string(0) ""
["commentaires"]=>
string(29) "fourniture de bureau d' etude"
["aa_raison_sociale"]=>
string(0) ""
["aa_adresse"]=>
string(0) ""
["aa_compl_adresse"]=>
string(0) ""
["aa_adr3"]=>
string(0) ""
["aa_code_postal"]=>
string(0) ""
["aa_ville"]=>
string(0) ""
["aa_pays"]=>
string(0) ""
["aa_tel"]=>
string(0) ""
["aa_contact"]=>
string(0) ""
["aa_email"]=>
string(0) ""
["aa_iban"]=>
string(0) ""
["aa_bic"]=>
string(0) ""
["aa_banque"]=>
string(0) ""
["aa_commentaire"]=>
string(0) ""
["code_comptable"]=>
string(8) "401ADAM "
["condition_payement"]=>
string(135) "30% d'acompte par chèque à réception de facture+++ <----- il est bient là
70% de solde par chèque à 60 jours date de réception de facture le 15 ou le 30"
["ordre_pour_cheque"]=>
string(0) ""
["compte_achat"]=>
string(7) "611ACCE"
["siret"]=>
string(0) ""
["attestation_frs"]=>
string(0) ""
["actif"]=>
string(1) "0"
["labelise"]=>
string(1) "0"
["black_liste"]=>
string(1) "0"
["num_tva"]=>
string(0) ""
["iban"]=>
string(0) ""
["bic"]=>
string(0) ""
["banque_fr"]=>
string(0) ""
["autre_adr_reglmt"]=>
string(1) "0"
["neutraliser"]=>
string(1) "0"
}
--30% d'acompte par chèque à réception de facture+++
70% de solde par chèque à 60 jours date de réception de facture le 15 ou le 30--<br />
<b>Notice</b>: Undefined index: condition_payement in <b>/var/www/html/profil/prostandv2/fournisseurs_bu.php</b> on line <b>4</b><br />
le rest est normal :D
{"perm1":"permission_fournisseur","perm":"rwd","pretraitement":"ok","info":"fichier include trouv\u00e9","rowsaffected":0,"msgerr":"","path":"\/var\/www\/html\/profil\/prostandv2\/","sql":"UPDATE fournisseurs SET raison_sociale = 'ADAM MONTMARTRE', adresse = '96 rue Damr\u00e9mont', complement_adresse = NULL, adresse_autre = NULL, code_postal = '75018', ville = 'PARIS', pays = NULL, telephone = '01.46.06.60.38', fax = '01.42.59.06.83', email_contact = 'adam.montmartre@orange.fr', poste = 'ACCESSOIRES', site_internet = NULL, commentaires = 'fourniture de bureau d\' etude', aa_raison_sociale = NULL, aa_adresse = NULL, aa_compl_adresse = NULL, aa_adr3 = NULL, aa_code_postal = NULL, aa_ville = NULL, aa_pays = NULL, aa_tel = NULL, aa_contact = NULL, aa_email = NULL, aa_iban = NULL, aa_bic = NULL, aa_banque = NULL, aa_commentaire = NULL, code_comptable = '401ADAM ', ordre_pour_cheque = NULL, compte_achat = '611ACCE', siret = NULL, attestation_frs = NULL, actif = '0', labelise = '0', black_liste = '0', num_tva = NULL, iban = NULL, bic = NULL, banque_fr = NULL, autre_adr_reglmt = '0', neutraliser = '0', condition_payement = '30% d\'acompte par ch\u00e8que \u00e0 r\u00e9ception de facture\n70% de solde par ch\u00e8que \u00e0 60 jours date de r\u00e9ception de facture le 15 ou le 30' WHERE id = 1","id":"1"}
l'élément 'condition_payement' est bien dans le tableau puisque'il est affiché dans le var_dump.
Je peux le manipuler puisque l'echo me donne bien l'information.
mais quand je fais l'unset, il me dit que l'élément n'extiste pas.
Ma version de php : 7.0.18
Merci pour vos réponses ;)
Pierre
Ok.
Mais dans ce cas là, il y a une chose que je ne comprends pas, car d'après tes commentaires, tu indiques que le unset
est à la ligne 9 alors que l'erreur indique la ligne 4, étant donné que la ligne 4 se réfère à $perm = permissions('permission_fournisseur');
tu devrais regarder dans la fonction permissions.
Autre chose aussi, je ne vois pas le rapport entre le var_dump
et les json_encode
étant donné que les deux ne font référence a la même variable :
var_dump
» $result
json_encode
» $ar
@Lartak ,
Salut,
Les var_dump, c'est pour le débuguage ;)
Merci pour ton intervention.
Plus loin, dans un autre fichier, j'avais ça :
if($result['condition_payement']==''){
$rowsoc = $connexion->query("SELECT * FROM societe WHERE id=1")->fetchAll(PDO::FETCH_ASSOC);
$result['condition_payement']=$rowsoc['cond_reglement_frns'];
}
et si $result['condition_payement'], j'avais évidement un problème ;)
alors, j'ai mis ça :
if(isset($result['condition_payement'])){
if($result['condition_payement']==''){
$rowsoc = $connexion->query("SELECT * FROM societe WHERE id=1")->fetchAll(PDO::FETCH_ASSOC);
$result['condition_payement']=$rowsoc['cond_reglement_frns'];
}
}
Voilou, mon problème est réglé ;)
Merci
Pierre
Bonjour.
Je ne vois pas où est le problème, étant donné que tu fais le var_dump
avant le unset
de la clé __condition_payement__ elle existe puisque tu ne fais l'unset
qu'après le var_dump
et pour rappel unset
:
unset — Détruit une variable
Il est donc tout à fait normal qu'après avoir utilisé unset
sur la clé __condition_payement__ que celle-ci n'existe plus.
Pourquoi ne pas remplacer :
if(isset($result['condition_payement'])){
if($result['condition_payement']==''){
Par :
if(!empty($result['condition_payement'])){
Cela revient peut-être à la même chose, sauf que ça fait moins de ligne de code et moins de conditions.
Pour rappel :
empty — Détermine si une variable est vide
Détermine si une variable est considérée comme vide. Une variable est considérée comme vide si elle n'existe pas, ou si sa valeur équivaut à FALSE. La fonction empty() ne génère pas d'alerte si la variable n'existe pas.
Les valeurs ci-dessous sont considérés comme étant vide :