cs_ditchou
Messages postés3Date d'inscriptionsamedi 7 octobre 2006StatutMembreDernière intervention26 juin 2009
-
26 juin 2009 à 03:51
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 2015
-
26 juin 2009 à 09:44
Bonjour à tous,
Je suis débutant dans javascript et j'ai des problèmes pour faire une fonction toute simple. Voici mon problème :
J'ai expérimenté que lorsqu'on a un form, on peut accéder a la valeur de la variable de cette manière :
document.forms["nom_de_ma_form"]["Nom_du_champ"].value.
J'avais essayé et ca fonctionné, malheureusement, dans mon cas ou la page est plus complexe, je ne parviens pas à le faire fonctionne.
<script lantguage= "javascript">
function signalerErreur(sourceErreur){
alert(document.forms["connexion"]["typeErreurConnexion"].value);
}
</script>
Et voici mon form :
echo " <form action='index.php' method='post' name='connexion'>";
//Le champ caché suivant permet de stocker la source d'erreur lors de la connexion
echo "";
echo "
";
echo "
Login :
";
echo "
";
echo "";
echo "
";
echo "
Mot de passe :
";
echo "
";
echo "";
echo "
";
echo "";
echo "
";
echo "</form>";
J'appelle ensuite ma fonction javascript de la sorte :
<?php
$UserLogin = $_POST['Login'];
$UserPass = $_POST['MotDePasse'];
if ($UserLogin!='')
{
$reponse = mysql_query("SELECT Pass FROM utilisateurs WHERE Login='$UserLogin'; ");
$returned_rows = mysql_num_rows ($reponse);
if ($returned_rows==0){
echo "<script>signalerErreur('Login')</script>";
}
else
//Le login est reconnu
{
$donneesUser = mysql_fetch_array($reponse);
if ($UserPass==$donneesUser['Pass'])
{
$_SESSION['EstConnete']='oui';
$_SESSION['Login']=$UserLogin;
header("Location: index.php");
}
else
{
echo "<script>signalerErreur('Pass')</script>";
}
}
}
?>
A voir également:
"Php variables" "build date" "php version 4.4.4" "server api" micro
cs_ditchou
Messages postés3Date d'inscriptionsamedi 7 octobre 2006StatutMembreDernière intervention26 juin 2009 26 juin 2009 à 03:55
dsl pour les balises <code>, je les ai mise car je pensais qu'elles mettraient le code sous une autre forme.
Du coup j'ai voulu essayé mais il semblerait que l'on ne puisse pas remodifier son message ensuite.
Voilà alors si quelqu'un a une idée, je suis preneur
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 26 juin 2009 à 09:44
Bonjour,
plusieurs remarques.
_ <script lantguage="javascript"> et d'ailleurs <script type="text/javascript"> vaut mieux
_ function signalerErreur(sourceErreur){
pourquoi un paramètre et ne pas l'utiliser ?
_ alert(document.forms["connexion"]["typeErreurConnexion"].value);
alert(document.connexion.typeErreurConnexion.value); suffit bien.
_ pourquoi diable autant d'echo totalement inutiles ?
echo " <form action='index.php' method='post' name='connexion'>";....echo "</form>";
<form action='index.php' method='post' name='connexion'>....</form> directement
c'est bien plus simple, bien plus lisible
_J'appelle ensuite ma fonction javascript de la sorte :
ben non ! regarde ta page html générée/résultante !
ton formulaire appelle du php qui fait, par exemple :
echo "<script>signalerErreur('Pass')</script>";
et bien la page html résultante c'est : <script>signalerErreur('Pass')</script> et rien d'autres
tu n'as probablement pas saisi comment php et javascript communiquaient !
le php sur le serveur créé du texte, il ne connait ni le html, ni le javascript
et l'envoie vers le micro.
le navigateur sur le micro reçoit ce texte, affiche le html et exécute le javascript
il ne connait pas du tout le php.