estrarre le prime 3 lettere di una parola

  • Creatore Discussione Creatore Discussione Rosyanne
  • Data di inizio Data di inizio

Rosyanne

Utente Attivo
25 Giu 2004
33
0
0
49
Crotone
Ciao,
ho bisogno di un aiutino, se io ho un form con due campi, nome e cognome, ho bisogno di estrarre in asp le prime 2 lettere del nome e le prime due lettere del cognome, come devo fare?
 
Ho sbagliato qualcosa!

Allora il form è il seguente:

<form name="register" method="post" action="">
<input name="nome" type="text" id="nome">
<input name="cognome" type="text" id="cognome">
<input type="hidden" name="password" id="password">
<input type="button" id="button" value="Invia" onClick="Password();">

la funzione richiamata è:
<%
Function Password()
Dim n
Dim c

n= Left(request("nome"),2)
c= Left(request("cognome"),2)
Randomize ' inizializza il generatore di numeri casuale
Do Until len(password) = 4 ' qui imposti la lunghezza della password
numero = Int( (9 & Rnd) + 1) ' Genera un valore casuale compreso tra 1 e 9.
password = password & numero
Loop
Response.Write ("La tua password è : <b>" & n & c & password & "</b>")
End Function
%>
 
non puoi richiamare una funzione lato server come se fosse lato client

<input type="button" id="button" value="Invia" onClick="Password();">

cos'è che devi fare esattamente?
 
allora...

...quando compilo il form ho bisogno di una funzione che prima di inserire i dati nel db (l'inserimento lo creo in seguito ovviamente cambiando in "submit") prenda le prime 2 lett del nome, le prime due lett del cognome, generi 4 numeri in maniera casuale e mi crei una password per l'utente.
Non so se mi sono spiegata correttamente.:o
 
ah ok :)

date le variabili "n" e "c" ad esempio, che recuperano nome e cognome, puoi usare questo codice al recupero dei dati

Dim nominativo
nominativo = Left(n, 2) & Left(c, 2)

e poi accodi i numeri casuali

fammi sapere
 
Ma la funzione non va...

quando clicco sul pulsante "Invia" non mi dà niente.
Deve essere sbagliata proprio la funzione.
Ho aggiunto ciò che mi hai scritto tu e quindi adesso ho:

<%
Function Password()
Dim nominativo
Dim n
Dim c
n= request("nome")
c= request("cognome")
nominativo= Left(n,2) & Left(c,2)
Randomize ' inizializza il generatore di numeri casuale
Do Until len(password) = 4 ' qui imposti la lunghezza della password
numero = Int( (9 & Rnd) + 1) ' Genera un valore casuale compreso tra 1 e 9.
password = password & numero
Loop
Response.Write ("La tua password è : <b>" & nominativo & password & "</b>")
End Function
%>
 
Ultima modifica:
che codice usi nel bottone? mica quello che ti ho segnalato come errore?

e nel tag <form> hai specificato il metodo e l'action della pagina contenente la funzione password()?
 
<form name="register" method="post" action="test.asp">
<input name="nome" type="text" id="nome">
<input name="cognome" type="text" id="cognome">
<input type="hidden" name="password" id="password">
<input type="submit" id="button" value="Invia">
</form>

metti la funzione password() nel file test.asp

fammi sapere ;)
 
...

Ma in seguito avrò:
<form name="register" action="<%=MM_editAction%>" method="POST" >

Dove nell' MM_editAction
ci sarà il codice per l'inserimento dei dati nel db per questo io pensavo di richiamare la funzione con OnClick
 
non esattamente: MM_editAction è una variabile che usa dreamweaver e ci scrive il percorso del file che esegue lo script

cerca nel codice MM_editAction e vedi come viene valorizzata

fammi sapere
 
mhmhmhm

cmq ho provato come mi hai detto, inviando tutto in una pagina test.asp ma il risultato è:
La tua password è :
e non si visualizza nient'altro.
Mamma mia ti sto facendo impazzire:(
 
Rosyanne ha scritto:
...quando compilo il form ho bisogno di una funzione che prima di inserire i dati nel db (l'inserimento lo creo in seguito ovviamente cambiando in "submit") prenda le prime 2 lett del nome, le prime due lett del cognome, generi 4 numeri in maniera casuale e mi crei una password per l'utente.
Non so se mi sono spiegata correttamente.:o
Ciao Rosanna!

Se ho ben capito che stai cercando di fare secondo me ti stai complicando la vita! ;)

Più semplicemente secondo me potresti mettere nella ACTION del form direttamente la ASP che salva i dati nel DB, e in essa, prima di attivare la query per l'insert, come ti suggeriva LUKE fai (senza l'utilizzo di alcuna Function):

<%
n= request("nome")
c= request("cognome")
nominativo= Left(n,2) & Left(c,2)

Randomize
Do Until len(password) = 4
numero = Int( (9 & Rnd) + 1)
password = password & numero
Loop

' apertura oggetto connection

' inizializzazione query

' apertura oggetto recordset

' chisura recordset e connection


Response.Write ("La tua password è : <b>" & password & "</b>")
%>


SaLuT!
:byebye:
 
Leggo ora il mess...

...Ti rinfrazio, invece dei numeri casuali ho messo la data e i minuti prendendo spunto da un altro post di questo forum.
Ora funziona, grazie a tutti per l'aiuto.
:byebye:
 

Discussioni simili