PHP et Javascript

PHP et Javascript - PHP - Programmation

Marsh Posté le 17-12-2002 à 17:37:53    

J'ai une liste de case à cocher (checkbox), chacune correspondant à une adresse mail. Je veux qu'en cliquant sur un bouton (input type="button" ) s'affiche dans un champ de texte (textarea) la liste des adresses mail dont la case était coché.
 
 
Comment faire sans reactualisation de la page et sans javascript ?
 
 
 
Si j'utilise javascript, j'ai tout de même besoin de récupérer les adresses mail qui sont stockés dans une bdd MySQL. Cette solution est-elle efficace pour transmettre à Javascript les variables PHP (??) :
 
On suppose que le nombre d'adresse mail ($num) et le tableau contenant les adresses $array(email0,email2,....emailnum-1) ont déjà été récuppéré en php. Le formulaire s'appelle "champdetexte" et les checkbox sont appelés checkbox_i avec i=[1..num]
 
<SCRIPT LANGAGE="JavaScript">
function listmail() {
 
    var tableau= [<?php for ($j=0;$j<($num-2);$j++) {echo "\"".$array[j]."\", ";} echo $array[($num-1)]; ?>];
 
    var listemail="";
 
    for (i=0;i!=<?php echo $num; ?>;i++) {
        checkbox = "document.formulaire.chexbox_" + i + ".checked==1";
        if (eval(checkbox)) listemail = listemail + tableau[i];
        }
    document.formulaire.champdetexte.value = listemail;
 
}
 
 
Il y a surement des erreurs de syntaxe ou autres dans le code, mais sinon... c'est possible ??
 

Reply

Marsh Posté le 17-12-2002 à 17:37:53   

Reply

Marsh Posté le 17-12-2002 à 17:47:45    

Citation :

Comment faire sans reactualisation de la page et sans javascript ?


 
pour afficher qqch de variable dans un txtarea il faut forcement du javascript :/
 
 

Citation :

Il y a surement des erreurs de syntaxe ou autres dans le code, mais sinon... c'est possible ??


erf je sais pas trop (qques mois sans php et ca y est g tout oublié [:kiki]), mais c possible :jap:


Message édité par goueg le 17-12-2002 à 17:48:41

---------------
(Feed-Back HFR) - Funky Tonight!
Reply

Marsh Posté le 17-12-2002 à 17:47:58    

sans javascript non.
avec ca parait pas mal.

Reply

Marsh Posté le 17-12-2002 à 17:48:54    

J'pense que c'est jouable à partir du moment où t'as stocké en Javascript toutes les infos lors du premier appel. Après, c'est une histoire de récupérer ces dites infos et de les afficher correctement.
Donc à mon avis oui, c'est possible, mais je sais pas si ça va pas être trop lourd.
Pour ton exemple de code, je ferai pas ça. J'ferai plutôt une boucle for en PHP qui ajoute tous les éléments dans un tableau. Mais je crois que ton truc peut marcher aussi :)


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 17-12-2002 à 17:54:58    

Tout d'abord merci a tous pour vos réponses...
 
Concernant la derniere, qu'entend tu par "une boucle for en php qui ajoute tous les éléments dans un tableau " ? Il s'agit de quels éléments ?

Reply

Marsh Posté le 17-12-2002 à 17:59:03    

souliane a écrit :

Tout d'abord merci a tous pour vos réponses...
 
Concernant la derniere, qu'entend tu par "une boucle for en php qui ajoute tous les éléments dans un tableau " ? Il s'agit de quels éléments ?


 
Nan, c'est surtout une histoire de propreté, et encore chu pas sûr que ce que je fasse soit plus propre :D
Perso, je ferais plutôt :
<?php
  for($i=0;$i<$num-2;$i++)
  {
    echo "tableau[$i] = $array[$i];\n";
  }
?>
Après, le source HTML sera pas très beau mais je trouve que ça permet d'éviter de s'emmerder avec le test if(dernierélément) then ajoute_pas_le_point_virgule() :p
 
Bref :)


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 17-12-2002 à 18:00:29    

et rajoute un \n pr aller a la ligne apres chaque mail

Reply

Marsh Posté le 17-12-2002 à 18:29:42    

taiche>   echo "tableau[$i] = $array[$i];\n";
 
Ah oui... j'ai mis du temps à comprendre cette ligne mais ouais c'est vrai que c'est un peu mieux ! J'avais pas pensé à "recopier" les éléments directement...
 
beleg> tu veux dire apres chaque echo ?

Reply

Marsh Posté le 17-12-2002 à 18:41:23    

if (eval(checkbox)) listemail = listemail + tableau[i]+ "\n";  
 
 
pr que chaque ligne du textarea  soit un mail

Reply

Marsh Posté le 17-12-2002 à 22:57:49    

:hello:  
 [:zion]


---------------
.... et dans les tenebres les lier
Reply

Marsh Posté le 17-12-2002 à 22:57:49   

Reply

Marsh Posté le 17-12-2002 à 23:47:49    

Code :
  1. echo ("coulix payday" );

Reply

Marsh Posté le 18-12-2002 à 00:37:06    

souliane a écrit :

Code :
  1. echo ("coulix payday" );




 [:almar2]  
 [:toyonos]


---------------
.... et dans les tenebres les lier
Reply

Marsh Posté le 18-12-2002 à 08:19:21    

[:veuch][:phenos][:onerdz]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed