Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Somma JS

  1. #1

    Somma JS

    ciao a tutti...
    ho un banalissimo problema in ASP JS, cioè, la somma di 2 valori.

    Il primo valore è preso da un database Mysql, il secondo da un form...come devo fare?

    io uso la seguente sintassi :

    var newdenaro = vekkiodenaro+denaro;

    ma al posto di sommare i 2 valori, accoda il secondo al primo.
    Ad esempio, se "vekkiodenaro" vale "3" e "denaro" vale "9",
    non mi restituisce la somma "12", bensì "39".
    Come si fa una semplice somma?:P:P
    ~¤ø þHø€n̾ ø¤~

  2. #2
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    si vede che non sono numeriche le variabili

  3. #3

    uhmm

    le avevo dichiarate così :

    var newori = upori+ori;
    var newsalute = upsalute+salute;
    var newforza = upforza+forza;
    var newintelligenza = upintelligenza+intelligenza;
    var newdex = updestrezza+destrezza;
    var newmagia = upmagia+magia;
    e le concatenava...
    adesso le ho dichiarate nel seguente modo :

    int newori = upori+ori;
    int newsalute = upsalute+salute;
    int newforza = upforza+forza;
    int newintelligenza = upintelligenza+intelligenza;
    int newdex = updestrezza+destrezza;
    int newmagia = upmagia+magia;
    e la pagina mi restituisce il seguente errore :

    Errore di compilazione di Microsoft JScript error '800a03ec'

    Previsto ';'

    /gdr.asp, line 35

    int newori;
    potresti aiutarmi? ^_^'

    Ah, nel database ho controllato...sono tutti settati come Int
    ~¤ø þHø€n̾ ø¤~

  4. #4
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    non sono molto esperto di giochi di ruolo è vero ma non ci ho capito una mazza

  5. #5

    okay....

    semplifikiamo il tutto

    devo sommare in una variabile "a", il valore contenuto in "b" (prelevato da un campo di tipo intero, di un database) e quello della variabile "c" (prelevato da un campo di un form)....
    come faccio?:P

    devo semplicemente fare a=b+c;
    ma se scrivo "int a=b+c;" , mi restituisce l' errore :

    Errore di compilazione di Microsoft JScript error '800a03ec'

    Previsto ';'

    /pagina.asp, line 35

    int a=b+c;
    se inserisco "var a=b+c;" , non mi somma i valori, bensì li accoda....

    spero di esser stato + chiaro
    ~¤ø þHø€n̾ ø¤~

  6. #6
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    <% a=5;
    b=5;
    c=a+b;
    Response.write(c);
    %>

    se io faccio questo a me scrive 10
    devi convertire i numeri che evidentemente non sono numeri ma stringhe

  7. #7

    O____o^

    nel db sono INT =_="

    Sto impazzendo ç___ç

    se provo ad inserire INT prima di eseguire la somma, mi rikiede il punto e virgola...

    se faccio

    var a=b+c;

    me li concatena, nonostante "c", sia prelevato da un campo del database di tipo intero.

    se faccio

    int a=b+c;

    la pag mi restituisce un errore, segnalandomi la mancanza di un " ; "...cosa devo fare?
    ~¤ø þHø€n̾ ø¤~

  8. #8
    è nomrmale che li concateni se i valori non sono numerici (ma ad esempio variant) prova con:
    codice:
    var newori = eval(upori+ori);
    oppure con:
    codice:
    var newori = int(upori)+int(ori);
    xxx

  9. #9

    uhmm

    provati...
    il primo newori = eval(upori+ori), continua a concatenare i valori...

    il secondo newori = int(upori)+int(ori), mi restituisce il seguente errore :

    Errore di run-time di Microsoft JScript error '800a138f'

    Previsto oggetto

    /questporta.asp, line 42
    continuo a dirlo..le variabili prese dal db, sono di tipo "INT".
    Ah, gia che ci sono, per una maggiore chiarezza posto l' intero codice della pagina :



    <%
    nome=Session("nome");
    var io = ADOConn.Execute("SELECT stemma FROM utenti Where Nick Like '"+nome+"'");
    stemma = ""+ io("stemma") + "";
    if ( ( nome!="Marcello" ) && ( nome!="Andrea" ) && ( stemma!="fato1.gif" ) && ( stemma!="fato2.gif" ) && ( stemma!="fato3.gif" ) ) response.end;
    if ( Request("autorizzazione")==1 )
    {
    nomepg=Request("nomepg");
    salute=Request("salute");
    forza=Request("forza");
    destrezza=Request("destrezza");
    intelligenza=Request("intelligenza");
    magia=Request("magia");
    ori=Request("ori");

    if (nomepg=="")
    {
    Response.Write("<script>alert('Non hai selezionato nessun personaggio!')</script>");
    }else{
    var cerca=ADOConn.Execute("select ori,salute,forza,intelligenza,destrezza,magia from utenti where Nick Like '"+nomepg+"'");
    if (cerca.EoF)
    {
    ADOConn.close();
    Response.Write("<script>alert('Il personaggio è inesistente!')</script>");
    }else{
    if ( ( nome=="Marcello" ) || ( nome=="Andrea" ) || ( stemma=="fato1.gif" ) || ( stemma="fato2.gif" ) || ( stemma="fato3" ) )
    {
    upori = ""+ cerca("ori") + "";
    upsalute = ""+ cerca("salute") + "";
    upforza = ""+ cerca("forza") + "";
    upintelligenza = ""+ cerca("intelligenza") + "";
    updestrezza = ""+ cerca("destrezza") + "";
    upmagia = ""+ cerca("magia") + "";

    var newori = int(upori)+int(ori);
    newsalute = int(upsalute)+int(salute);
    newforza = int(upforza)+int(forza);
    newintelligenza = int(upintelligenza)+int(intelligenza);
    newdex = int(updestrezza)+int(destrezza);
    newmagia = int(upmagia)+int(magia);

    var aggiorna = ADOConn.Execute("update utenti set ori='"+newori+"', salute='"+newsalute+"', forza='"+newforza+"', intelligenza='"+newintelligenza+"', destrezza='"+newdex+"', magia='"+newmagia+"' where nick like '"+nomepg+"'");
    ADOConn.close();
    Response.Write("<script>alert('I valori sono stati modificati!')</script>");
    }else{
    ADOConn.close();
    Response.Write("<script>alert('Dove credi di andare LAMEROZZO?!?')</script>");
    }
    }
    }
    }
    %>
    adesso puo' essere + facile capire...spero
    ~¤ø þHø€n̾ ø¤~

  10. #10
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    ciao, se usi jscript devi convertire in numero con parseInt(numero) se è un intero o parseFloat(numero) se è float
    pertanto:

    codice:
    a=parseInt(b)+parseInt(c)
    Jupy

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.