Aide sur un formulaire JAVASCRIPT

Fermé
Sams31100 - 26 oct. 2017 à 10:51
 Sams31100 - 26 oct. 2017 à 11:58
Bonjour à tous

J'ai un projet de site que je dois remettre en fin de semaine prochaine à un client, la subtilité étant que ce dernier doit tourner ONLINE et en LOCAL, voila pourquoi nous avons privilégié le JS. Le hic, c'est que si je connait bien tout ce qui est HTML et CSS, c'est mon associé qui maîtrise la programmation (genre PHP, JS, C, ...). Malheureusement il n'est plus dispo pour un petit moment il a du bouger pour des soucis de famille ... :(

Je vous avoue qu'avant cette semiane donc, je ne connaissais quasiment rien au JAVASCRIPT et que je m'y suis mis dans l'urgence, en consultant le cours à ce sujet sur le site ar exemple, mais je galère trop ...

Bien sur, il n'est pas question de vous demander un code tout prêt, simplement quelques tuyaux pour le rendre fonctionnel :lol:
CE QUE JE DÉSIRE FAIRE :

- un simple <textarea> en autofocus (zone prête à taper dès l'ouverture de la page) et avec un maxlength pour ne pouvoir y saisir que 10 caractères

- une fonction onsubmit ou autre pour valider le formulaire avec la touche entrée, j'avais trouvé ca si jamais c'est pas faux :

onKeyPress="if (event.keyCode == 13) TA_FONCTION()"
- enfin le plus complexe, suite à ce qui est saisi et validé par l'utilisateur, le script doit renvoyer vers une page html, une sorte de "petite" base de données sera nécessaire, mais voici pourquoi le JAVASCRIPT est préféré au PHP, le code devant pouvoir s'exécuter en LOCAL.

Si jusque là vous m'avez suivi, bravo ! Même moi je m'y embrouille les pinceaux, j'ajouterais juste que si il y aura environ 200 codes différents à saisir par les utilisateurs, il n'y aura que 3 ou 4 pages finales de redirection (dont une sorte de 404 renvoyant à l'index).



Voila, ca à l'air simple, même pour moi dis comme ça mais je vous avons que je galère comme jamais o_O

En tout cas si je n'ai pas été assez clair n'hésitez m-pas à me demander plus d'informations et merci beaucoup par avance pour ceux qui me liront ! :D:D:D:D

2 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
26 oct. 2017 à 11:25
Bonjour,

- un simple <textarea> en autofocus (zone prête à taper dès l'ouverture de la page) et avec un maxlength pour ne pouvoir y saisir que 10 caractères

=> Le textarea ... tu le fais en HTML...
Pour le FOCUS, en javascript, il existe la fonction focus()
https://developer.mozilla.org/fr/docs/Web/API/HTMLElement/focus

Pour faire appel à une fonction lorsque la page est chargée, il existe :
document.addEventListener("DOMContentLoaded", function(event) { 
  // ici ton code ou l'appel à ta fonction
});



- une fonction onsubmit ou autre pour valider le formulaire avec la touche entrée, j'avais trouvé ca si jamais c'est pas faux :

onKeyPress="if (event.keyCode == 13) TA_FONCTION()"  

Oui c'est ça.

Même si il est préférable de ne pas mettre le code js directement dans le keypress mais plutôt de le mettre dans une fonction
par exemple
 <input type="text" onKeyPress="TA_FONCTION();">

function TA_FONCTION(){
  //ici le code à réaliser, par exemple :
   document.myform.submit();
}



<blcok>
- enfin le plus complexe, suite à ce qui est saisi et validé par l'utilisateur, le script doit renvoyer vers une page html, une sorte de "petite" base de données sera nécessaire, mais voici pourquoi le JAVASCRIPT est préféré au PHP, le code devant pouvoir s'exécuter en LOCAL.
</block>
Tu ne peux pas, en javascript, manipuler de fichiers côté utilisateur....
Ca serait une grosse faille de sécurité.....
A la limite, tu pourrais utiliser des cookies.... mais bon... un utilisateur peu décider de les supprimer à tout moment... donc ce n'est pas super fiable.


1
Merci jrodane pour ta réponse complète.

Par rapport au dernier point, je en souhaite pas manipuler de fichiers mais simplement avec une variable faire quelquechose du genre :
if (...) 1 > page1
else (...) 2 > page2

Je sais pas si c'est faisable ou si ca a du sens :p

Merci encore :)
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
26 oct. 2017 à 11:52
Tu peux faire de la redirection en javascript via :
document.location = 'http://www.mozilla.org' 


Ce qui reviendrait, pour ton code, à faire un truc du genre

if(tavariable == 'toto' ){
  document.location = 'page1.html';
}else{
    document.location = 'page2.html';
}


Après... si tu as plusieurs cas possibles ... au lieu de faire du if else.. le mieux serait d'utiliser un SWITCH CASE
switch(tavariable ) {
    case 'toto':
       document.location = 'page1.html';
        break;
    case 'titi':
       document.location = 'page2.html';
        break;
     case 'tutu':
       document.location = 'pagetruc.html';
        break;
    default:
    default:
        document.location = 'page_par_defaut.html';
} 
0
Sams31100 > jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024
26 oct. 2017 à 11:58
Ah oui je ne connaissais pas en effet ces fonctions SWITCH et CASE, ca peut être utile en effet !

Ben je vais tester ca et devrais pouvoir m'en débrouiller correctement :)

Merci beaucoup encore une fois pour otn aide ! ! ! :D
0