Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908

    Recupero ID Radio Button

    Ho due pagine, una con una serie di radio button raggruppati sotto determinati groupname
    codice:
    <div class="box" id="Div_OLTRE_AirSlightGrain7016" runat="server"><asp:RadioButton ID="OLTRE_AirSlightGrain7016" GroupName="Superficie" runat="server"  /><span runat="server"><span class="img" ><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_7016.png" alt=""/></span>7016</span><div class="image-box"><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_7016.png" alt=""/></div></div>		
    	
    	
    <div class="box" id="Div_OLTRE_AirSlightGrain7035" runat="server"><asp:RadioButton ID="OLTRE_AirSlightGrain7035" GroupName="Superficie" runat="server"  /><span runat="server"><span class="img" ><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_7035.png" alt=""></span>7035</span><div class="image-box"><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_7035.png" alt=""/></div></div>	
    	
    	
    	
    <div class="box" id="Div_OLTRE_AirSlightGrain7040" runat="server"><asp:RadioButton ID="OLTRE_AirSlightGrain7040" GroupName="Superficie" runat="server"  /><span runat="server"><span class="img" ><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_7040.png" alt=""></span>7040</span><div class="image-box"><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_7040.png" alt=""/></div></div>	
    	
    
    
    <div class="box" id="Div_OLTRE_AirSlightGrain8016" runat="server"><asp:RadioButton ID="OLTRE_AirSlightGrain8016" GroupName="Superficie" runat="server"  /><span runat="server"><span class="img" ><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_8016.png" alt=""></span>8016</span><div class="image-box"><img src="Oltre/Superfici/AIR_SLIGHTGRAIN/AIR_SLIGHTGRAIN_8016.png" alt=""/></div></div>
    dalla quale, per fare il submit, utilizzo un linkbutton:

    codice:
        <center><asp:LinkButton ID="sendRequest" runat="server" PostBackUrl="https://www.miourl.name/Send.aspx">INVIA RICHIESTA</asp:LinkButton></center>
    nella pagina ricevente, dove vengono richiesti dei dati, per recuperare l'ID del RadioButton selezionato utilizzo il seguente codice:

    codice:
                string prova = Request.Form["Superficie"]
    Purtroppo non va, poiché mi viene fuori l'errore:

    Object reference not set to an instance of an object.


    Cosa sbaglio?

    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    ho ricopiato il tuo codice e va perfettamente
    Pietro

  3. #3
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Ricapitolando: dalla pagina uno, seleziono un determinato radio button facente parte del GroupName "Superficie", clicco su invia e vado nella pagina due, ovvero un form dove chiede l'anagrafica e il consenso per il trattamento dei dati. In questa pagina, c'è una variabile che prende assume il valore di Request.form["Superficie"], clicco su invia e mi da
    Object reference not set to an instance of an object.


    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Riepilogando:

    Nella pagina due, il codice
    string prova = Request.Form["Superficie"]

    funziona, nel senso che non dà errore e contiene il valore selezionato.

    Di cosa succede dopo, quando clicchi il tasto invia, non ne hai parlato
    Pietro

  5. #5
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Quando clicco sul tasto invia, mando via mail, oltre i dati che l'utente inserisce nel modulo, anche quelli della variabile "prova". E' quest'ultima il problema, perché il resto viene inviato correttamente.

    Quote Originariamente inviata da pietro09 Visualizza il messaggio
    Riepilogando:

    Nella pagina due, il codice
    string prova = Request.Form["Superficie"]

    funziona, nel senso che non dà errore e contiene il valore selezionato.

    Di cosa succede dopo, quando clicchi il tasto invia, non ne hai parlato
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    ma hai guardato in debug se la variabile prova non sia null?
    Pietro

  7. #7
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Quote Originariamente inviata da pietro09 Visualizza il messaggio
    ma hai guardato in debug se la variabile prova non sia null?
    Se ometto quella il form funziona, dubito ci siano dubbi!
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  8. #8
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    rispondi, per mia curiosità, la variabile prova contiene dati o è null?
    Pietro

  9. #9
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Ho ricompilato e pubblicato e nella pagina del form, il valore lo vedo, ora provo a fare il submit e vedo che succede.
    Quote Originariamente inviata da pietro09 Visualizza il messaggio
    rispondi, per mia curiosità, la variabile prova contiene dati o è null?
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  10. #10
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Allora, nulla:

    se nel Page_Load della pagina due scrivo lblStatus.Text = Request.Form["Superficie"], il valore viene correttamente inserito, se invece, cosa che serve a me, faccio in questo modo:

    codice:
            protected void btnSend_Click(object sender, EventArgs e)
            {
                string nome = fname.Value.ToString();
                string cognome = lname.Value.ToString();
                string città = fcity.Value.ToString();
                string mail = email.Value.ToString();
                string telefono = phone.Value.ToString();
                string larghezza = l.Value.ToString();
                string altezza = h.Value.ToString();
                string commenti = comment.Value.ToString();
                string valore = Request.Form["Superficie"]
                //string installationType = Request.Form["instType"].ToString();
                //string statoConsenso = Consenso.SelectedValue.ToString();
                string checkConsenso = Consenso.SelectedValue;
                if (checkConsenso == "KO")
                {
                    lblStatus.Text = "NON E' POSSIBILE PROCEDERE SENZA L'AUTORIZZAZIONE AL TRATTAMENTO DEI DATI";
                }
                else
                {
    
    
                    MailMessage message = new MailMessage();
                    message.To.Add("mail@dominio.it");
                    message.From = new System.Net.Mail.MailAddress("mail@dominio.com");
                    message.Subject = "Richiesta preventivo da " + nome + " " + cognome;
                    message.Body = "Dettagli richiesta preventivo: " + "<br>" + "<b>NOME: </b> " + nome + "<BR>" + "<b>COGNOME: </b> " + cognome + "<BR>" + "<b>CITTA': </b>" + città + "<BR>" + "<b>E-MAIL:</b> " + mail + "<BR>" + "<B>TELEFONO: </B>" + telefono + "<BR>" + "<B>LARGHEZZA:</b> " + larghezza + "<BR>" + "<B>ALTEZZA: </B>" + altezza + "<BR>" + "<b>COMMENTI:</b> " + commenti + "<BR>" + "<B>PRODOTTO:</B>" + valore;
    
    
                    //message.Attachments.Add(new System.Net.Mail.Attachment(Server.MapPath("file.pdf")));
                    SmtpClient smtp = new SmtpClient("localhost");
                    message.IsBodyHtml = true;
                    smtp.Send(message);
                    lblStatus.Text = "La richiesta è stata correttamente inviata."; 
                    btnSend.Enabled = false;
                }
    
    
            }
    Viene sollevata l'eccezione!!!
    Ultima modifica di dwb; 25-09-2019 a 12:10
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

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.