Fonction error ligne 2

tutouche Messages postés 24 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 16 mai 2003 - 12 mai 2003 à 17:26
tutouche Messages postés 24 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 16 mai 2003 - 12 mai 2003 à 18:42
Bonjour,

GGGrrrr.

J'ai une error que je ne trouve pas :
"Warning: Missing argument 2 for prixfr() in c:\program files\easyphp\www\prixfr.php on line 2
123.59>"

Le resultat de mon script c'est le 123.59 que vous voyez, normalement il devrait apparaitre dans mon formulaire :dissapprove) .

Si qlq1 vois où est mon erreur merci.

<?
function prixFR($prix, $pays)
{
$pays = number_format($prix, 2, '.', ' ');
return $pays;
}
?>
<form name="form" method="post" action="prixfr.php">
Nombre decimal:

Representation Francaise : >

</form>

Autre question que signifie la fonction : "return".?

Merci

Novice :kisses)

4 réponses

cs_mehdibou Messages postés 365 Date d'inscription vendredi 24 mai 2002 Statut Membre Dernière intervention 18 octobre 2004
12 mai 2003 à 18:10
Salut,

"Missing argument", ça veut tout dire : ta fonction requiert deux arguments : $prix et $pays et tu n'en fournis qu'un seul.
Pour corriger ce problème, soit tu mets le deuxième argument en facultatif (donc, avec une valeur par défaut) :
function prixFR($prix, $pays="valeur par défaut")

function prixFR($prix, $pays="fr") //par exemple

soit, lors de l'appel à la fonction, tu fournis les deux arguments : prixFR($HTTP_POST_VARS['prix'], "fr");

heu :-| ... en fait, je viens de voir ta fonction... le paramètre $pays ne sert à rien ? puisque tu le modifie sans en prendre compte... je comprends pas trop là ce que tu veux faire...

Et pour répondre à ton autre question, return sert, dans une fonction, à retourner une valeur.

Exemple :
function carre ($nombre)
{
return $nombre * $nombre;
}
echo carre(2);

Ceci va afficher 4, compris ? ;)

@+ et bonn' prog'

Mehdi :approve)
0
tutouche Messages postés 24 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 16 mai 2003
12 mai 2003 à 18:19
merci cela fonctionne.

Mais pq dis tu ? :

heu :-| ... en fait, je viens de voir ta fonction... le paramètre $pays ne sert à rien ? puisque tu le modifie sans en prendre compte... je comprends pas trop là ce que tu veux faire...

Je comprend pas trop.
Mon but est de faire un script permetant de transformer un decimal en un pris avec 2 chiffres derriere la virgule.

As tu un code plus simple que celui ci? si oui je suis preneur.

Merci :))
0
cs_mehdibou Messages postés 365 Date d'inscription vendredi 24 mai 2002 Statut Membre Dernière intervention 18 octobre 2004
12 mai 2003 à 18:32
Nan, ton code est très bien (bien que, en France, on utilise la virgule plutot que le point décimal), mais ton argument $pays ne sert à rien puisque tu n'en tiens pas compte (au moins pour le moment....) dans ta fonction.

function prixFR($prix)
{
return number_format($prix, 2, '.', ' ');
}

..est donc suffisant

@+ et bonn' prog'

Mehdi :approve)
0
tutouche Messages postés 24 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 16 mai 2003
12 mai 2003 à 18:42
re,

$pays me sert pour mon formulaire non????

Car il faut que je fasse un code qui utilise la fonction prixfr(prix,pays).

Alors comment faire?

merci :)
0
Rejoignez-nous