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 naps
    Registrato dal
    May 2001
    Messaggi
    465

    response redirect con link pagina

    Salve a tutto il forum,
    ho un problemino e non so' come gestirlo
    ho un controllo di vari campi su un form
    pero' vorrei gestirlo in maniera che,
    quando l'utente non compila uno dei campi
    obbligatori mi dasse l'errore ad una pagina personalizzata
    o magari una pagina gia' creata da me.


    quello che io avevo gia messo era questo,
    ma questo codice mi restiusce una pagina
    senza back per tornare e senza il colore di sfondo
    che voglio io e tante altre cose..

    ecco il codice:


    codice:
    errori="" 
    
    If Trim(Request.form("email")) = "" Then 
    errori="Non hai digitato il tuo indirizzo email
    " 
    end if 
    If Trim(Request.form("nome")) = "" Then 
    errori=errori&"Non hai digitato il nome
    " 
    end if 
    If Trim(Request.form("cognome")) = "" Then 
    errori=errori&"Non hai digitato il cognome
    " 
    end if 
    If Len(Trim(Request.form("cognome")))>20 Then 
    errori=errori&"Il campo cognome contiene più di 20 caratteri
    " 
    end if 
    
    
    if errori<>"" then 
    response.write errori
    response.end 
    end if

    scusatemi, avete qualche idea?
    grazie.

  2. #2
    Utente di HTML.it L'avatar di naps
    Registrato dal
    May 2001
    Messaggi
    465
    ad esempio sul
    codice:
    response.write errori
    potrebbe esser cambiato com
    codice:
    response.write "pagina2.asp"
    non credo che la sintassi sia cosi' ma si puo' fare?


  3. #3
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    perchè vuoi fare il response.redirect e non processare il tutto sulla stessa pagina? In questo caso sarebbe più facile utilizzare il CreateObject("Scripting.Dictionary") per una gestione molto più raffinata degli errori che può essere mostrata o come report o evidenziando in rosso ogni singola voce non compilata dei campi del form.
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  4. #4
    Utente di HTML.it L'avatar di naps
    Registrato dal
    May 2001
    Messaggi
    465

    bene

    pero sinceramente non so come applicare questa cosa,
    mi sai illuminare...

  5. #5
    Utente di HTML.it L'avatar di naps
    Registrato dal
    May 2001
    Messaggi
    465
    e' possibile gestirlo con degli alert?

  6. #6
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    Dimmi in che modo processi i dati del form. li passi ad una pagina successiva o ricarichi la stessa che attraverso dati variabili esegue anche operazioni diverse?.. per gli allert devi usare javascript e gestire il tutto lato client.
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  7. #7
    Utente di HTML.it L'avatar di naps
    Registrato dal
    May 2001
    Messaggi
    465

    scusami...

    e' cosi:


    il form:

    codice:
    <form ACTION="<%=MM_editAction%>" METHOD="POST" name="form1">
    
    ...tutti i campi vari ecc.
    
    </form>


    codice:
    <%
    ' *** Insert Record: set variables
    
    If (CStr(Request("MM_insert")) = "form1") Then
    
      MM_editConnection = MM_connessione_utenti_STRING
      MM_editTable = "login"
      MM_editRedirectUrl = ""
      MM_fieldsStr  = "nome|value|cognome|value|company|value|citta|value|email|value|nota|value|password|value|dataora|value"
      MM_columnsStr = "nome|',none,''|cognome|',none,''|company|',none,''|citta|',none,''|email|',none,''|nota|',none,''|password|',none,''|data|',none,NULL"
    
      ' create the MM_fields and MM_columns arrays
      MM_fields = Split(MM_fieldsStr, "|")
      MM_columns = Split(MM_columnsStr, "|")
      
      ' set the form values
      For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
        MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i)))
      Next
    
      ' append the query string to the redirect URL
      If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
        If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
          MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
        Else
          MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
        End If
      End If
    
    End If
    %>
    <%
    ' *** Insert Record: construct a sql insert statement and execute it
    
    Dim MM_tableValues
    Dim MM_dbValues
    
    If (CStr(Request("MM_insert")) <> "") Then
    
      ' create the sql insert statement
      MM_tableValues = ""
      MM_dbValues = ""
      For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
        MM_formVal = MM_fields(MM_i+1)
        MM_typeArray = Split(MM_columns(MM_i+1),",")
        MM_delim = MM_typeArray(0)
        If (MM_delim = "none") Then MM_delim = ""
        MM_altVal = MM_typeArray(1)
        If (MM_altVal = "none") Then MM_altVal = ""
        MM_emptyVal = MM_typeArray(2)
        If (MM_emptyVal = "none") Then MM_emptyVal = ""
        If (MM_formVal = "") Then
          MM_formVal = MM_emptyVal
        Else
          If (MM_altVal <> "") Then
            MM_formVal = MM_altVal
          ElseIf (MM_delim = "'") Then  ' escape quotes
            MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"
          Else
            MM_formVal = MM_delim + MM_formVal + MM_delim
          End If
        End If
        If (MM_i <> LBound(MM_fields)) Then
          MM_tableValues = MM_tableValues & ","
          MM_dbValues = MM_dbValues & ","
        End If
        MM_tableValues = MM_tableValues & MM_columns(MM_i)
        MM_dbValues = MM_dbValues & MM_formVal
      Next
      MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"
    
      If (Not MM_abortEdit) Then
        ' execute the insert
        Set MM_editCmd = Server.CreateObject("ADODB.Command")
        MM_editCmd.ActiveConnection = MM_editConnection
        MM_editCmd.CommandText = MM_editQuery
        MM_editCmd.Execute
        MM_editCmd.ActiveConnection.Close
    
        If (MM_editRedirectUrl <> "") Then
          Response.Redirect(MM_editRedirectUrl)
        End If
      End If
    
    End If
    %>
    codice:
    <%
    ' Controlla che il pulsante submit abbia come nome "invia"
    If Request("invia") <> "" Then 
    
    errori="" 
    
    If Trim(Request.form("email")) = "" Then 
    errori="Non hai digitato il tuo indirizzo email
    " 
    end if 
    If Trim(Request.form("nome")) = "" Then 
    errori=errori&"Non hai digitato il nome
    " 
    end if 
    If Trim(Request.form("cognome")) = "" Then 
    errori=errori&"Non hai digitato il cognome
    " 
    end if 
    If Len(Trim(Request.form("cognome")))>20 Then 
    errori=errori&"Il campo cognome contiene più di 20 caratteri
    " 
    end if 
    
    
    if errori<>"" then 
    response.write errori
    response.end 
    end if
    
    
    Dim Mail
    Set Mail = CreateObject("CDONTS.NewMail")
    Mail.From = request.form("email")
    Mail.To = Request("email")
    
    'Destinatario nascosto della mail
    Mail.bcc = "miamail@mail.it"
    
    
    ' Oggetto del messaggio
    Mail.Subject = "Conferma iscrizione"
    ' Corpo del messaggio
    Mail.Body = "Ciao " & Request("nome") & "," & _
    Chr(13) & Chr(10) & _
    "hai ricevuto questa mail perchè " & _
    "hai richiesto l'iscrizione al nostro sito." & _
    Chr(13) & Chr(10) & _
    "La password che ti è stata assegnata è:" & Chr(13) & Chr(10) & _
    Request("password") & _
    Chr(13) & Chr(10) & Chr(13) & Chr(10) & _
    "Per confermare l'iscrizione clicca su questo link" & Chr(13) & Chr(10) & _
    "http://www.miosito.it/conferma.asp?password=" & Request("password") & _
    Chr(13) & Chr(10) & Chr(13) & Chr(10) & _
    "Saluti dal webmaster del sito " 
    
    strErr = ""
    bSuccess = False
    On Error Resume Next ' catch errors
    Mail.Send ' send message
    If Err <> 0 Then ' error occurred
    strErr = Err.Description
    else
    bSuccess = True
    End If
    End If
    %>

    non so se quello che ti serviva.. :rollo:
    comunque alla fine ricarica tutto nella stessa pagina.

  8. #8
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    C'è troppo dreamweaver per i miei gusti. spero almeno che tu sia consapevole di ciò che tutto "quell'ambaradan" è capace di fare. Potrei aiutarti in pseudo codice, ma modificare quello che mi hai postato ci facciamo notte.
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  9. #9
    Utente di HTML.it L'avatar di naps
    Registrato dal
    May 2001
    Messaggi
    465

    ok...

    scusami ,
    perdonami hai ragione.

  10. #10
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    non c'è da scusarsi.
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

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.