Bonjour a toute et a tous,
je viens d ecrire un formulaire de calcul pour un projet wordpress. c est tout en php. ca marche tres bien sinon que les variables restent en memoire et j aimerai que chaque utilisateur puisse l utilser en meme temps sans avoir les saisis des autres. connaissez vous un tuto ou une methode pour regler ce probleme? d avance merci pour vos reponses!

6 réponses


Underscreen
Réponse acceptée

Du moment que tu rempli un champ il s'agit d'un formulaire donc pourquoi ne pas mettre juste un isset post , faire ton calcul et l'afficher ?
Je vois pas comment un formulaire peut etre affecté par un autre ?
pour moi tu dois juste faire :

<?php 
if(isset($_POST['calcul'])){
    $nbre1 = $_POST['champ1'];
    $nbre2 = $_POST['champ2']
    $total = $champ1+$champ2;
}
et la où tu veux le résultat tu fais : 
<?= $total ?>
?>
Sowhat
Auteur

je pense que le pb vient du fait que je n ai pas connecté mes variables php avec la base de donnee... je suis tres debutant en mysql et php. vous auriez une idée ou mieux un petit exemple de calcul en php codé proprement? par exemple l utilisateur remplit des champs, un code php realise un calcul grace aux champs remplis puis affiche le resultat a l utilisateur. desole pour mon ignorance et merci d avance!

Bonsoir Sowhat !!
Il existe mille et une façon de faire des calculs script php javascript etc... peu importe du moment que ça répond à tes besoins.
Quels sont des besoins exacts ?
Je comprend que tu veux faire de simple calculs mais que les variables sont en mémoire. Que veux tu dire par la ?
Essaye d'être leplus précis possible sur ta demande ! :)

Sowhat
Auteur

Bonjour, Merci pour ta réponse Underscreen.
Je vais essayer d'être plus explicite.
Dans ma page, l'utilisateur rempli un tableau. Avec les champs remplis je réalise un calcul et j'affiche ensuite le résultats:

Les champs sont remplis par l'utilisateur:
<input class="" type="text" id="champ1" name="champ1" value="<?=get_option('champ1',''); ?>
<input class="" type="text" id="champ2" name="champ2" value="<?=get_option('champ2',''); ?>

La fonction réalise le calcul
function calcul(){
if(isset($_POST['calcul'])){
update_option('champ1', $_POST['champ1']);
update_option('champ2', $_POST['champ2]);
$champ1=get_option('champ1','');
$champ2=get_option('champ2','');

$resultat=$champ1+$champ2;
update_option('resultat',$resultat);
}

Le résultat est affiché:
<?=get_option('resultat,''); ?>

Le problème est que ces variables restent en mémoires sur le site. Si 2 utilisateurs utilisent le site en même temps ils verront les champs remplis par l'un et par l'autre. Chose que je souhaite éviter.

Je pense qu'il faut rentrer ces variables dans la base de donnée... (Comme je ne maîtrise pas trop je javascript je voulais rester en php)

Voilà j espère avoir été plus clair,

Merci!

Sowhat
Auteur

ok merci pour ta reponse. effectivement je pensais qu il fallait utiliser get_option...

Sowhat
Auteur

en fait ma methode par l utilisation de get option est a l origine de la mise en memoire des variables. ainsi tous les utilisateurs voient les variables remplies par tout le monde. ca peut etre eventuellement utile dans certain cas.... merci