Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Ciclo di controllo

  1. #1
    Utente di HTML.it L'avatar di french
    Registrato dal
    Jun 2001
    Messaggi
    117

    Ciclo di controllo

    Come potrei fare a ciclare questo controllo?
    Da tenere presente che 'ArrStringa' può contenere anche molte più variabili.
    In pratica io devo uscire con 'Controllo' valorizzato a True o a False, a seconda se trovo o no una corrispondenza.
    codice:
    VarDaControllare = "a"
    Stringa = "a,b,c"
    
     ArrStringa = Split(Stringa,",")
    
    If VarDaControllare <> ArrStringa(0) and VarDaControllare <> ArrStringa(1) and VarDaControllare <> ArrStringa(2) Then
      	Controllo = True
    Else
    	Controllo = False
    End If
    Grazie.
    French

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    VarDaControllare = ",a,"
    Stringa = ",a,b,c,"
    if instr(Stringa,VarDaControllare) > 0 then
    'c'è
    else
    'non c'è
    end if

    Roby

  3. #3
    Utente di HTML.it L'avatar di french
    Registrato dal
    Jun 2001
    Messaggi
    117
    Mah. Io ho cercato di semplificare il discorso, ma evidentemente è un po' più complesso di quello che credevo...
    Il tutto sta dentro una funzione che serve aggiungere tutte le querystring presenti ad un link (per non dover ogni volta aggiungere tutti i parametri) filtrando però le querystring del link stesso, perchè altrimenti continuano a ripetersi. Questa è la funzione:

    codice:
    Function AddQryStr(PrimaQryStr,SecondaQryStr)
     tutteqrystr = Split(Request.querystring,"&")
     For Each x in tutteqrystr
      qrytot = Split(x,"=")
      If qrytot(0) <> PrimaQryStr and qrytot(0) <> SecondaQryStr Then 
     	qrytot1 = qrytot1 & qrytot(0) & "|"
      End If
     Next
     arr_qrystr = Split(qrytot1,"|")
     For Each z in arr_qrystr
      If Request(z) <> "" Then
    	 qrystr = qrystr & "&" & z & "=" & Request(z)		
      End If 
      AddQryStr = qrystr
     Next
    End Function
    Esempio:
    codice:
    ">link
    Va bene ad esempio per i link della paginazione di record e per altri usi: mi trovo benissimo.
    Io volevo però rendere dinamiche anche le querystring di controllo passate dalla funzione, e creare un Array.
    Per cui la funzione diventerà:
    codice:
    Function AddQryStr(ListaQryStr)
    .....
    ed il link (a cui potrò aggiungere tutte le querystring per il controllo che voglio senza dover modificare la funzione):
    codice:
    ">link
    Spero di essere stato chiaro...
    French

  4. #4
    Utente di HTML.it L'avatar di french
    Registrato dal
    Jun 2001
    Messaggi
    117
    Qualche consiglio?
    French

  5. #5
    Utente bannato
    Registrato dal
    Oct 2003
    Messaggi
    372
    allora: il codice che hai scritto va sempificato:
    questo:
    codice:
    VarDaControllare = "a"
    Stringa = "a,b,c"
    
     ArrStringa = Split(Stringa,",")
    
    If VarDaControllare <> ArrStringa(0) and VarDaControllare <> ArrStringa(1) and VarDaControllare <> ArrStringa(2) Then
      	Controllo = True
    Else
    	Controllo = False
    End If
    DIVENTA
    codice:
    VarDaControllare = "a"
    Stringa = "a,b,c"
    
    If instr(","&Stringa&",", ","&VarDaControllare &",")>0Then
      	Controllo = True
    Else
    	Controllo = False
    End If

  6. #6
    Utente di HTML.it L'avatar di french
    Registrato dal
    Jun 2001
    Messaggi
    117
    Ok, così va bene. Da stupido avevo invertito la restituzione del True e False, per cui non mi rilevava la variabile da controllare.
    La funzione completa, che ora è ottima, per chi vuole beneficiarne:

    codice:
    Function AddQryStr(QryStrEscluse)
     tutteqrystr = Split(Request.querystring,"&")
     For Each x in tutteqrystr
      qrytot = Split(x,"=")
      If InStr("," & QryStrEscluse & "," , "," & qrytot(0) & ",") = 0  Then
     	qrytot1 = qrytot1 & qrytot(0) & "|"
      End If  
     Next
     arr_qrystr = Split(qrytot1,"|")
     For Each z in arr_qrystr
      If Request(z) <> "" Then
    	 qrystr = qrystr & "&" & z & "=" & Request(z)		
      End If 
      AddQryStr = qrystr
     Next
    End Function
    Ciao e Grazie
    French

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.