Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1415 connectés 

  FORUM HardWare.fr
  Programmation

  [Perl / JS] comment gerer le onChange en Perl ?

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Perl / JS] comment gerer le onChange en Perl ?

n°108825
impulse
Posté le 07-03-2002 à 13:01:31  profilanswer
 

hi.
 
J'ai une liste deroulante. Je voudais savoir a n'importe quel moment quelle ligne est selectionnée par l'utilisateur. En JS on peut utiliser un evenement onChange pour gerer ça... mais comment faire en Perl (je voudrais que ma variable $index = 1 quand window.document.form.list.selectedIndex = 1) ?
 
Qqun a une idée ?
 
hihi ;)

mood
Publicité
Posté le 07-03-2002 à 13:01:31  profilanswer
 

n°108827
youdontcar​e
Posté le 07-03-2002 à 13:04:30  profilanswer
 

tu ne comprends pas bien la différence entre script serveur et script client apparemment. si tu changes une variable sur le client, il faut la transmettre au serveur (script perl) en rechargant la page (ou une frame, ou une iframe).
 
problème de design à la base donc ...
 
hihi :p

n°108833
impulse
Posté le 07-03-2002 à 13:12:27  profilanswer
 

Citation :

tu ne comprends pas bien la différence entre script serveur et script client apparemment. si tu changes une variable sur le client, il faut la transmettre au serveur (script perl) en rechargant la page (ou une frame, ou une iframe).  


 
Je sais bien que le JS est execute cote client et le GCI (Perl) est execute cote serveur. Mais alors comment resoudre mon pb ? Je veux envoyer des infos avec mon formulaire mais ces infos ne sont pas contenues dans la liste de mon form (cette liste est juste une representation de ces infos) mais dans un tableau de structures. Il faut bien que je me positionne au bon endroit dans mon tableau pour envoyer les bonnes donnees...  
 
Une autre solution (meilleure) serait de m'expliquer comment passer un tableau de structures d'un script a un autre (je n'y arrive pas avec des hidden fields).
 
Tu vois ce que je veux faire ou pas ?
 
hihi :D

n°108837
youdontcar​e
Posté le 07-03-2002 à 13:17:14  profilanswer
 

>> Tu vois ce que je veux faire ou pas ?  
 
pas vraiment. pour passer un tableau de structures, il suffit de convertir la bestiole en string côté js et de la décoder côté perl ensuite (avec un seul input hidden).
 
hihi http://forum.hardware.fr/icones/icon10.gif

n°108845
impulse
Posté le 07-03-2002 à 13:34:10  profilanswer
 

Je schematise alors :
 
<fichier config.conf>
 
OBJECT
{
  "Suppression des SE rezo1"
  DEBUT: 15:30
  FIN: 16:30
  SUP NT rezo1
  SUP LINUX rezo1
  SUP UNIX rezo1
}
 
OBJECT
{
  "Suppression des Wins sur tous les rezos"
  DEBUT: 20:00
  FIN: 21:00
  SUPP 9x all
  SUPP NT all
}
 
etc ...
 
chaque contient 1 et 1 seul "champ" description, debut et fin. Chaque objet contient 1 ou plusieurs champ supp.
Ce fichier est parsé est les infos sont placees dans un tableau de struct ->
 
struct objet =>
{
  description => '$',
  start => '$',
  end => '$',
  suppresses => '$',
};
 
struct Suppress =>
{
  application => '$',
  rezo => '$',
};
 
ensuite je crée une liste deroulante ->
 
  15:30 16:30 "Suppression des SE rezo1"
  20:00 21:00 "Suppression des Wins sur tous les rezos"
  etc ...
 
le but de cette appli est de modifier le contenu du fichier de conf en passant par une interface graphique (autrement il suffirait d'ouvrir le fichier avec vi). L'utilisateur va choisir "l'enregistrement" du fichier qu'il veut modifier en le selectionnant dans la liste. Une nouvelle fenetre (un nouveau script) s'ouvre contenant les infos de cet enregistrement dans des textboxes et l'utilisateur peut les modifier et sauvegarder les modifs dans le fichier de conf.
 
C'est plus clair ?
 
Je ne vais quand meme pas generé mon tableau de structs dans le premier script puis ensuite une nvelle fois dans mon 2eme ? si ? Je peux donc soit passer le tableau de structs en param ou alors passer seulement les infos de l'enregistrement a modifier...
 
Que faire ?
 
hihi :p

n°108880
youdontcar​e
Posté le 07-03-2002 à 14:21:53  profilanswer
 

tu n'as pas besoin de structures pour ça. tu peux séparer ta page en deux frames : la première pour choisir l'entrée à modifier (ou pour en créer une nouvelle), la seconde qui se charge après avoir choisi l'action à effectuer dans la première. chaque frame est un script (perl ou autre).
 
pour charger la seconde, tu n'as besoin que d'un id : par ex la position de l'entrée dans le fichier, ou sa description (je choisirais la position). le script choppe l'entrée en question, puis créé le formulaire : <input name='DEBUT' value='15:30'>, <input name='SUP' value='...'> etc., avec un input hidden qui indique la position dans le fichier (ou le nom de la description donc) de l'entrée que tu modifies.
 
le target du formulaire est un script perl, qui s'occupera d'updater l'entrée du fichier correspondant. c'est tout ! sachant que si plusieurs utilisateurs veulent modifier la même entrée, il faudrait prévoir un mécanisme de lock avec un autre fichier ou dans une db.
 
c'est tout, je vois pas bien ce qui te bloque.
 
hihi http://forum.hardware.fr/icones/icon15.gif

n°108884
youdontcar​e
Posté le 07-03-2002 à 14:23:05  profilanswer
 

et bien sûr, tu peux utiliser le même script pour faire toutes tes actions, vu que ça a l'air assez simple. au lieu de charger page1.pl, page2.pl, page3.pl, tu charges page.pl?cmd=edit1, page.pl?cmd=editform, etc.
 
hihi http://forum.hardware.fr/icones/icon7.gif

n°108984
impulse
Posté le 07-03-2002 à 15:44:14  profilanswer
 

Je ne suis pas sur de bien suivre ton raisonnement...
Comment je crée ma liste d'objets a editer sans les avoir mis dans un tableau auparavant ? Ca ne me parait pas pratique du tout de travailler directement sur le fichier... Mon idée c'etait de travailler sur les infos du tableau et a la fin recopier le contenu du tableau dans mon fichier.
 
hihi :D

n°109007
youdontcar​e
Posté le 07-03-2002 à 15:55:36  profilanswer
 

:eek: tu veux charger TOUTES les infos du fichier dans une page ? si tu aimes te compliquer la vie, pourquoi pas ...  
 
pour choisir quel objet éditer, il faut évidemment parser le fichier en entier avant de pouvoir afficher la première frame. puis créer une liste. puis sur le onchange de cette liste, passer le 'selectedIndex' à la seconde frame. qui lit les infos du fichier et créé le formulaire.
 
ps : c'est le genre d'outil qui devrait faire un backup du fichier avant le réécrire.
 
hihi :p

n°109014
impulse
Posté le 07-03-2002 à 16:03:49  profilanswer
 

Mouais... je sais pas trop quoi penser. Elle me parait louche ta solution ;) Tu ne saurais pas plutot comment passer un tableau de structs en parametres ? :D
 

Citation :

ps : c'est le genre d'outil qui devrait faire un backup du fichier avant le réécrire.


 
Ca c'est pas un pb : l'appli travaille sur une copie locale du fichier puis ensuite le renvoie sur le serveur.
 
hihi :jap:

 

[jfdsdjhfuetppo]--Message édité par impulse--[/jfdsdjhfuetppo]

mood
Publicité
Posté le 07-03-2002 à 16:03:49  profilanswer
 

n°109020
youdontcar​e
Posté le 07-03-2002 à 16:08:34  profilanswer
 

comme dit plus haut, une string.  
 
ça te parait louche ? pas à moi :D enfin si c'est parmi tes premiers scripts serveur, ça peut sembler bizarre, mais en fait ça ne l'est pas (du tout :D)
 
hihi :D

n°109028
impulse
Posté le 07-03-2002 à 16:14:41  profilanswer
 

Ouais enfin quand meme -> copier tout le contenu d'un fichier dans une string ça me parait bien lourd. Enfin bon, je suis newbie alors peut etre que t'as raison... ;)
Je vais voir ce que je peux faire avec ça (meme si j'ai pa l'impression d'avoir bcp avancé :( ).  
 
MERCI YOUDONTCARE !
 
hihi [:impulse]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Perl / JS] comment gerer le onChange en Perl ?

 

Sujets relatifs
lire une page HTML en PERL[Perl / Javascript] recuperer le selectedIndex dans une var Perl
[PERL] comment lancer un prog en perl c pas moi qui l'ai fait....[ Perl, DBI, MySQL ] temps de validité de la methode connect de DBI
[Javascript / Perl] modifier une variable Perl dans une fonction JS[Perl / CGI] passer un array d'un script a un autre ?
[PERL & C] Partage de données[C/unix][Perl][Lex/Yacc][X] Creation d'une communaute Epitech2
[Perl]Comment mettre une ligne en commentaireavenir PERL ?
Plus de sujets relatifs à : [Perl / JS] comment gerer le onChange en Perl ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR