Déclaration du variable javascript

Résolu
developper55 Messages postés 130 Statut Membre -  
developper55 Messages postés 130 Statut Membre -
Bonjour,

function confirmation() {
window.open('addevent.php?add='+document.write(code));
}
il me donne "undefined" ,

quelqu'un peux m'aider ,
merci

15 réponses

  1. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    Forcément ! Il ne connait pas "code" ! Une première idée serait de passer le code en argument de la fonction :

    function confirmation(code) {
            window.open('addevent.php?add='+document.write(code));
    } 
    
    confirmation(1);

    0
  2. kiki.boss3 Messages postés 49 Statut Membre 13
     
    Bonjour,
    vous n'avez pas declaré la variable "code" si celle-ci est une variable il faut la déclarer comme suit:

    function confirmation() {
    var code;
    ; après il faut initialiser cette variable exemple : code = "Salut"
    window.open('addevent.php?add='+document.write(code));
    }

    si non si vous considerez code comme constante il faut faire comme ça :
    function confirmation() {
    window.open('addevent.php?add='+document.write("code"));
    }

    Bonne chance.
    A bientôt.
    0
  3. developper55 Messages postés 130 Statut Membre 9
     
    je vous transfert mon code complet,
    je voudrai transporter le contenu du textarea vers la page addevent.php affin de l'injecter dans mon base

    function confirmation(vari) {
    location.replace("addevent.php?add="+document.write(vari));
    }

    </script>
    <div>
    <form name="form">
    <textarea class="full" name="code" > </textarea>
    <p>
    <INPUT TYPE="Button" onClick="confirmation(code);" VALUE="ajouter">
    </form>
    </div>
    </body>
    0
  4. kiki.boss3 Messages postés 49 Statut Membre 13
     
    Donc modifiez-vous les 2 lignes suivantes :

    <textarea class="full" id="code" > </textarea>

    <INPUT TYPE="Button" onClick="confirmation(document.getElementById(code).value);" VALUE="ajouter">
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    Et j'ajouterais qu'il faut urlencoder le résultat au niveau de la fonction pour éviter les mauvaises surprises :

    function confirmation(vari) {
    location.replace("addevent.php?add="+document.write(encodeURI(vari)));
    } 
    
    <textarea class="full" id="code" > </textarea>
    
    <INPUT TYPE="Button" onClick="confirmation(document.getElementById(code).value);" VALUE="ajouter">


    0
  7. developper55 Messages postés 130 Statut Membre 9
     
    il me donne un "Erreur sur la page", je pense le prob sur
    <INPUT TYPE="Button" onClick="confirmation(document.getElementById(code).value);" VALUE="ajouter">
    0
  8. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    Dans ta page change ceci :
    <textarea class="full" name="code" > </textarea>


    Par ceci :
    <textarea class="full" name="code" id="code"> </textarea>

    0
  9. developper55 Messages postés 130 Statut Membre 9
     
    toujours pareil,
    Erreur sur la page
    0
  10. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    Essaye sous Firefox puis tape javascript: dans la barre d'adresse, ce sera sûrement plus compréhensible !
    0
  11. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
     
    <script type="text/javascript">
    <!--
    function confirmation(vari) {
    location.replace("addevent.php?add="+document.write(encodeURI(vari)));
    } 
    //-->
    </script>
    
    <textarea class="full" name="code" id="code" > </textarea>
    <input type="Button" onSubmit="confirmation(document.getElementById(code).value);" VALUE="ajouter">

    0
  12. developper55 Messages postés 130 Statut Membre 9
     
    j'ai activé le Débogage des scripts dans internet explorer;
    et il m'a marqué : confirmation(document.getElementById(code).value)
    0
  13. developper55 Messages postés 130 Statut Membre 9
     
    j'ai essayé http://www.js-doc.com/fonctions/decodeuri.html
    et peu importe que j'écri il m'affiche : %255Bobject%255D
    ce qui est équivalent: [objet]
    0
  14. Alain_42 Messages postés 5413 Statut Membre 904
     
    Bonsoir,

    Pourquoi veux tu absolument passer le contenu de ton textearea par l'URL ?

    Tu sera limité à 255 caractères et si il y a des caractères spéciaux, galère !

    Ton textearea est dans un formulaire ?

    <form method"post" action="addevent.php">
    
    <textarea class="full" name="code" id="code" > </textarea>
    <input type="Submit" value="ajouter">
    </form>
    
    et dans addevent.php tu récupéres par:
    
    $texte=$_POST['code'];
    
    
    0
  15. developper55 Messages postés 130 Statut Membre 9
     
    j'ai trouvé:

    function confirmation(vari) {
    vari=decodeURI(vari);
    location.replace("addevent.php?add="+ vari);
    }
    <INPUT TYPE="Button" VALUE="ajouter" onClick="confirmation(encodeURI((code).value));"/>

    Alain_42 ta methode fonctionne très bien, je sais pas pqoi , jé compliqué mon code

    en tou ca merci à tous
    0
    1. Jean-François Pillou Messages postés 18961 Date d'inscription   Statut Webmaster Dernière intervention   63 308
       
      Ouf :-)
      0
  16. developper55 Messages postés 130 Statut Membre 9
     
    merci Jeff,
    0