J'ai besoin d'aide pour une addition en PHP

Petit nouveau ! | 4 Messages

03 janv. 2017, 15:20

Bonjour je suis un élève de seconde qui étudie l'ICN et je dois créer une page php permettant d'effectuer une addition ( le problème c'est que je ne m'y connais pas)
Le début de mon code :
<html>
<head>
	<title>Addition</title>
</head>

<body>
<input $a="alias_a" class="input" style="width: 300px;" type="number"></input> +	<input $b="alias_b" class="input" style="width: 300px;" type="number"><button type="button"> = </button>
</body>
</html>
<?php
$result=$a+$b;
echo $result;
?>
Il y a un problème au niveau de l'attribution des variables a et b pour php et je ne sait pas comment faire fonctionner le bouton.
Merci pour votre aide et indulgence a propos de l'orthographe

Mammouth du PHP | 2703 Messages

03 janv. 2017, 15:30

il faut un formulaire, voir par exemple : http://www.w3schools.com/html/html_forms.asp

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

03 janv. 2017, 20:16

Bonjour,

Voici un tuto qui pourra t'aider pour comprendre le fonctionnement d'un formulaire et son traitement en PHP :
https://openclassrooms.com/courses/conc ... ormulaires
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 4 Messages

10 janv. 2017, 14:10

Merci je vais voir sa tout de suite ;)

Petit nouveau ! | 4 Messages

10 janv. 2017, 14:46

Bon maintenant j'arrive a rafraichir la page mais impossible d'aller chercher les valeurs de a et b et j'ai beau demander de l'aide je trouve aucun moyen de dire au code Php d'aller chercher la valeur html plus haut .
Sa donne sa:
<html>
<head>
	<title>Addition</title>
</head>

<body>
<form  action="Site.php">
<input type="number" name="$a" value="$a"></input> + <input type="number" name="$b" value="$b"></input><input type="submit" value="=">
</form>
</body>
</html>
<?php
$result=$a+$b;
echo $result;
?>

Petit nouveau ! | 4 Messages

10 janv. 2017, 14:55

Je n'y avais pas pensez ......
Merci Beaucoup !

Mammouth du PHP | 1967 Messages

10 janv. 2017, 15:26

Il faut que tu récupère les valeur par le protocole GET

Ce protocole est la méthode par défaut de transfert de donnée d'un formulaire html
si tu clique sur le bouton d'envoi, tu remarqueras que l'url dans ton navigateur aura un peu changé. les valeurs de tes champs y seront ajouté.

En php, Il existe un tableau qui contient automatiquement toutes ces valeurs. il suffit d'attribuer la bonne valeur à chaque variable.
par exemple $a = $_GET["a"]; attrribuera à la variable $a la valeur du champs ayant comme nom "a".

<html>
<head>
	<title>Addition</title>
</head>

<body>
<form  action="Site.php">
<input type="number" name="a" value="<?php echo $_GET['a'];?>"></input> + <input type="number" name="b" value="<?php echo $_GET['b'];?>"></input><input type="submit" value="=">
</form>
<?php
$a = $_GET['a'];
$b = $_GET['b'];
$result=$a+$b;
echo $result;
?>
</body>
</html>
J'ai fait plusieurs modifications dans ton code :
J'ai modifié le "name" de tes 2 champs de formulaire. le carctère $ peut preter à confusion, voir bloquer complètement. Il vaut mieux se limiter aux caractères textuels et au tiret pour les valeur d'attribut html.
la valeur de tes champs a été aussi modifié, pour que PHP sache qu'il doit aller inserer les valeurs de ces champs, il faut le lui dire. J'ai donc ouvert une balise PHP et indiqué que je voulais un affichage de la valeur voulue.
En début de code PHP de traitement de résultat, j'ai ajouté 2 lignes qui récupère les valeurs du formulaire pour les attribbuer à une variable PHP chacun. le calcul pourra ainsi se faire.

Enfin j'ai remonté ton code PHP plus haut dans le code HTML afin que l'affichage demandé dans le code PHP se fasse dans le code HTML, et non à la fin.

Il manque encore pas mal de chose pour faire un bon code, mais il devrait être fonctionnel à condition d'avoir un serveur PHP.
Il se peut qu'il y aiu des erreurs de type NOTICE. Elle n'empècherons pas ton code de fonctionner.

Analyse bien le code donné, et tente quelques modifications (ajout d'un 3e champs, passer à une soustraction, ...) pour assimiler les bases.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube