Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

Asp classique / Exercice Miroire


Sujet :

ASP

  1. #1
    Candidat au Club
    Asp classique / Exercice Miroire
    Bonjour tout le monde,

    Je débute en ASP et j'aimerais avoir votre aide svp pour un exercice assez simple. Ce qui est demandé c'est d’écrire un mot sur un input puis d'afficher son inverse lors de l'envoi du formulaire.

    Le code est assez simple :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
            <form>
                <input name="champs" type="text">
                <input type="submit" value="Miroir">
             </form>     
     
            <%
                 var s = Request.queryString("champs").item();
                 var t = "";
     
                 for (var i = s.length; i >= 0; i--) {
                       t += s.charAt(i);
                 }
            %>
     
            <div><% Response.write(t) %></div>


    Mais ce qui me rend fou c'est le message d'erreur que je n'arrive pas a comprendre ''s.length est null ou pas un objet'' !!!! pourtant tout semble être correcte.

  2. #2
    Membre éprouvé
    L'erreur est assez simple et si tu avais debuggé ton code tu l'aurais de suite.
    request.querystring récupère une variable d'url alors que tu envois une variable "postée".

    Ta méthode renvoie forcement la valeur "Null"...

    essaie avec Request.Form...

    Le plus rapide je pense pour inverser ta chaine de caractère serait de faire ceci :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
     
    string ns = new String(Array.Reverse(s.ToCharArray()));

  3. #3
    Candidat au Club
    C’était donc ça. Merci Dokho pour la réponse

  4. #4
    Membre du Club
    Citation Envoyé par illy16 Voir le message


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
            <%
                 var s = Request.queryString("champs").item();
                 var t = "";
     
                 for (var i = s.length; i >= 0; i--) {
                       t += s.charAt(i);
                 }
            %>
     
            <div><% Response.write(t) %></div>


    c'est pas de l'asp classic ton code ca ne risque pas de marcher, c'est du javascript entre des balises asp %

    le code correct ca aurait été :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <%
     
    s = Request.queryString("champs")
     
    taille2s = len(s)
     
    for i = taille2s to 1
     
    inverse2s = inverse2s & mid(s,i,1)
     
    next
     
    response.write inverse2s
     
    %>

###raw>template_hook.ano_emploi###