Fonction php et formulaire

Eléphanteau du PHP | 22 Messages

08 janv. 2011, 11:18

Bonjour tout le monde,

vous comprendrez à travers ma question que je n'ai que de très très sommaires connaissances
en matière de PHP.

ci-dessous le code qu'un ami a réaliser pour moi :

Code : Tout sélectionner

function getNumeroReception($nombre, $nbTotalChar) { $nbChar = $nbTotalChar - strlen($nombre); if($nbChar < 0) { return false; } $numReception = ''; while($nbChar-- > 0) { $numReception .= '0'; } return $numReception . $nombre; }
Ce code a pour but, vous l'aurez surement compris, de créer un nombre précédé de 0.

exemple :

- $nombre = 547;
- $nbTotalChar = 5; // ici je souhaite que mon nombre final fasse un total de 5 chiffres

alors le nombre retourné sera : 00547


Ma question est la suivante : comment dois-je faire pour appliquer cette fonction
et que le résultat soit affiché dans un champ de formulaire (fonction et form dans la même page).

<input name="num_recept" type="text" id="num_recept" value="<?php echo $que_mettre_ici?; ?> " size="15" />


Vous me direz peut être que je n'ai qu'à demander à cet ami de répondre à ma question, mais si je m'en remets à vous c'est que celui-ci est parti en vacance. Je vous avoue que j'attends une aide de votre part assez rapide.

Bien cordialement.

ViPHP
xTG
ViPHP | 7331 Messages

08 janv. 2011, 11:45

<?php
$nombre = 23;
$nbTotalChar = 5;
?>
<input name="num_recept" type="text" id="num_recept" value="<?php echo getNumeroReception($nombre, $nbTotalChar); ?> " size="15" />
On utilise la fonction ainsi. :)

PS : il faut que le code de la fonction se trouve au dessus de ce code, et non en dessous.

Eléphanteau du PHP | 22 Messages

08 janv. 2011, 12:32

Un GRAND merci à toi xTG !!! :pouce:

toujours pareil, une fois écrit ça parait évident.

grâce à toi je viens aujourd'hui de faire un petit pas supplémentaire dans le monde du PHP :D

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

09 janv. 2011, 11:08

A noter également que pour compléter une chaine avec des caractères (à droite ou à gauche), tu peux utiliser la fonction str_pad() de php sans avoir à refaire une fonction spécifique :
<input name="num_recept" type="text" id="num_recept" value="<?php echo str_pad($nombre, $nbTotalChar, "0", STR_PAD_LEFT); ?> " size="15" />
Ceci devrait avoir le même effet :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...