Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    cosa fa il costrutto split(request(""))

    Ciao a tutti,

    non riesco a capire che cosa fanno le seguenti righe di codice asp:

    codice:
    dim RGBfeature
    
    RGBfeature=split(Request("RGB"))
    La prima riga dichiara la variabile RGBFeature, la seconda assegna alla variabile stessa ciò che

    viene fuori eseguendo la parte destra dell' =, ma cosa fa tale parte?

    L' RGB tra virgolette potrebbe essere la proprietà name di un certo numero di checkbox di un'altra

    pagina asp.

    Qualcuno mi può dare una mano?

    Grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    La split separa una stringa (Request("RGB")) in sotto stringhe in base ad un delimitatore che, se omesso, è lo spazio. Il tutto finisce in un array ad una dimensione (RGBfeature).
    Poiché le checkbox con lo stesso "name" sono separate da virgola, quella istruzione che hai usato non dovrebbe essere in grado di recuperarle.
    Sarebbe forse più giusto:

    codice:
    dim RGBfeature
    RGBfeature=split(Request("RGB"),",")
    Rif: http://www.w3schools.com/vbscript/func_split.asp

    Roby

  3. #3
    Ciao,

    Split() di solito richiede anche un separatore, a meno che il separatore non sia uno spazio.

    La sua funzione è quella di "dividere" una stringa per il separatore indicato:

    Stringa = "pippo, mario, topolino"
    StringaSplittata = Split(Stringa, ",")
    Response.Write(StringaSplittata(0)) ' stampa pippo
    Response.Write(StringaSplittata(1)) ' stampa mario
    Response.Write(StringaSplittata(2)) ' stampa topolino

    Oppure:

    For i = LBound(StringaSplittata) To UBound(StringaSplittata)
    Response.Write(StringaSplittata(i) & "
    ")
    Next

    ti stampa:

    pippo
    mario
    topolino

    nel tuo caso probabilmente il campo RGB è una stringa con separatore uno spazio:
    RGB = "alfa beta gamma"
    i valori li estrai come sopra.

    fulvio (scusa per la spiegazione poco tecnica)

  4. #4
    sono diventato troppo lento a scrivere... comunque Roby le spiega meglio le cose

  5. #5

  6. #6
    Grazie mille,

    siete stati gentilissimi, mi dareste una mano a capire cosa fanno anche le righe di codice

    successive? Fanno seguito a quelle che ho già postato:

    codice:
    dim RGBFeature 
    
    	'RGB
    	RGBFeature = split(Request("RGB"))
    	dim ParArray,feature
    	ParArray = Array(false,false,false,false,false,false)
    	for each feature in RGBFeature 
    		ParArray(Cint(trim(feature))-1)= true
    	next
    kf.SetRGBRetrievalPar ParArray(0),ParArray(1),ParArray(2),ParArray(3),ParArray(4),ParArray(5) 
    	'o("RGB : " & join(ParArray," "))
    	set ParArray = nothing
    E' una pagina asp che dovrebbe tenere conto a quali checkbox (quelle con name=RGB) di

    un'altra pagina asp l'utente ha messo la spunta e a quali no, passando il risultato a una libreria

    che chiama nella riga kf.SetRGBRetrievalPar.

    Potete darmi un aiuto a capire il codice?

    Grazie

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Sicuramente chi l'ha fatto avrà avuto le sue ragioni... comunque:
    1) Crei l'array RGBFeature
    2) Crei l'array ParArray di 6 elementi, tutti con valore false
    3) Scorri l'array RGBFeature e, per ogni suo elemento, converti in true ogni elemento dell'array ParArray


    Roby

  8. #8
    Grazie per l'aiuto

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.