erreur de fonction formulaire

mr.mickael
Invité n'ayant pas de compte PHPfrance

16 févr. 2011, 19:53

Bonjour,

voila je fais un code afin d'avoir sur internet un espace réservé au membres enregistrer au moment quand je lance la page pour s'inscrire voici l'erreur :

Fatal error: Call to undefined function getStateName() in C:\Program Files (x86)\EasyPHP-5.3.5.0\www\Site\login_form.php on line 69

voici une partie de mon code :

<body style="margin: 0">
<table border="0" cellpadding="5" cellspacing="0">
<tr><td colspan="3" class="gray_banner">
membres ou inscription</td></tr>
<tr><td width="33%" valign="top" class="bold_large">
êtes-vous déjà membre ?
<!-- pour le login des nouveaux membres-->
<form action="login.php" method="POST">
<p><table border="0">
<?php
if (isset($message))
{
echo "<tr><td style='color: red' colspan='2' >$message <br /></td></tr>";
}
?>
<tr><td class="bold_right">Identifiant</td>
<td><input type="text" name="fusername" size="20" maxsize="20"></td></tr>
<tr><td class="bold_right">Mot de passe</td>
<td><input type="password" name="fpassword" size="20" maxsize="20"></td></tr>
<input type="hidden" name="do" value="login">
<tr><td style="text-align: center" colspan="2"><br />
<input type="submit" name="log" value="Identifier-vous"></td></tr>
</table>
</form>
</td>

<td style="width: 1"; background-color : green"></td>
<td style="width: 67%"><p>
<span class="bold_large"> Pas encore membre ?</span>
texte avec pour s'incrire
<--formulaire à renseigner pour les nouveau membres-->
<form action="login.php" method="POST">
<table border="0" width="100%">
<?php
if (isset($message_new))
{
echo "<tr><td style='color: red font-weight: bold' colspan='2'> <p>$message_new</p></td></tr>";
}
?>
<tr><td class="bold_right">ID membre</td>
<td><input type="text" name="loginName" value="<?php echo @$loginName ?>" size="20" maxlength="20"></td></tr>
<tr><td class="bold_right">Mot de passe</td>
<td><input type="password" name="password" value="<?php echo @$password ?>" size="10" maxlength="8"></td></tr>
<tr><td class="bold_right">Prénom</td>
<td><input type="text" name="firstName" value="<?php echo @$firstName ?>" size="40" maxlength="40"></td></tr>
<tr><td class="bold_right">Patronyme</td>
<td><input type="text" name="lastName" value="<?php echo @$lastName ?>" size="40" maxlength="40"></td></tr>
<tr><td class="bold_right">Rue</td>
<td><input type="text" name="street" value="<?php echo @$street ?>" size="55" maxlength="50"></td></tr>
<tr><td class="bold_right">Ville</td>
<td><input type="text" name="city" value="<?php echo @$city ?>" size="40" maxlength="40"></td></tr>
<tr><td class="bold_right">ETAT</td>
<?php
$stateName=getStateName();
$stateCode=getStateCode();
for ($n=1; $n<=50; $n++)
{
$state=$stateName[$n];
$scode=$stateCode[$n];
echo "<option value='$scode'";
if ($scode == "AL")
echo " selected";
echo">$state\n";
}
?>
</select>
&nbsp;&nbsp;&nbsp;&nbsp;<b>Code Postal </b>
<input type="text" name="zip" value="<?php echo @$zip ?>" size="10" maxsize="10">
</td></tr>


Merci de votre aide.

Je me demande si ce n'est pas la version de easy php qui poserai souci?

ViPHP
xTG
ViPHP | 7331 Messages

16 févr. 2011, 19:56

Et elle est censée sortir d'où cette fonction ?
Elle n'existe pas en nativedans PHP, c'est donc une fonction utilisateur dont le code doit être inclue avant l'appel (include du fichier contenant la fonction).

mr.mickael
Invité n'ayant pas de compte PHPfrance

16 févr. 2011, 20:19

EFFECTIVEMENT, merci de ton aide,

tu peux me dire surement la différence entre un fichier en .php et en .inc?

merci d'avance

ViPHP
xTG
ViPHP | 7331 Messages

16 févr. 2011, 21:37

Il peut n'y avoir aucune différence suivant la configuration du serveur. :)

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

16 févr. 2011, 22:39

En fait c'est surtout une question de nomenclature... en général on utilise l'extension ".inc" (ou ".inc.php") pour les scripts php qui doivent être inclus dans d'autres script php, et qui ne seront donc jamais appelés directement.

Tu aurais par exemple un script principal "index.php" auquel on accède par son url, et un script "constantes.inc" qui ne serait jamais appelé en direct, mais seulement inclut par d'autres script.

Et comme le serveur n'est pas toujours configuré pour traiter l'extension ".inc", on utilise parfois l'extension ".inc.php". Ca permet d'identifier les fichiers que l'on inclut (grace au .inc) et cela évite que le fichier apparaisse en clair (grace au .php) si un p'tit malin s'amuse à taper son url pour essayer de l'ouvrir en direct :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...