Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Con la quattordicesima generazione Lenovo ridisegna il suo ThinkPad più iconico attorno al nuovo Space Frame e ai processori Intel Core Ultra Series 3. Resta sotto 1Kg, è molto più semplice da riparare e si rivolge al professionista che lavora in mobilità, con un prezzo da prodotto di vertice.
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Le Jabra Evolve3 85 non sono semplicemente cuffie Bluetooth con cancellazione del rumore. Sono un dispositivo professionale pensato per chi trascorre gran parte della giornata in riunione, al telefono o davanti a un assistente basato sull'intelligenza artificiale
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-11-2006, 21:14   #1
shambler1
Senior Member
 
L'Avatar di shambler1
 
Iscritto dal: Jul 2001
Messaggi: 2776
(asp) recupero dati dalle checkbox e select

Salve a tutti
Vorrei recuperare dei dati dal db nelle checkbox facendo in modo che risultanino gia checcate, per poi poterle eventualmente cambiare.
Se non le cambio, la pagina deve scrivere nuovamente il valore gia selezionato in precendenza.
So come fare il passaggio nelle text box

Ma mi sono inchiodato per quanto riguarda le check box e le select
mi hanno suggerito questo codice ma non funziona, mi da errore di sintassi.


<% rs.MoveFirst
If not rs.EOF then
while not rs.EOF
if rs('Sesso')='maschio' then
Response.Write "<td width='30'>maschio</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='maschio' checked></td></tr><tr>
<td width='30'>femmina</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='Femmina'></td></tr><tr>"
else
Response.Write "<td width='30'>maschio</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='maschio'></td></tr><tr>
<td width='30'>femmina</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='Femmina' 'checked'></td></tr><tr>"
End if
rs.MoveNext
Wend
End if %>



con le select non ho la più pallida idea di come poter fare.
La select registra una provincia, poniamo Genova.

Allora , io recupero i dati del form e vorrei trovarmi la select con "genova " selezionata e poi eventualmente cambiarla.
Aiutatemi che sto messo molto male coi tempi
shambler1 è offline   Rispondi citando il messaggio o parte di esso
Old 18-11-2006, 15:29   #2
anonimizzato
 
Messaggi: n/a
Ciao, allora ASP non lo conosco ma di sicuro il metodo è uguale che in PHP.

Guarda ti posto un porzione di codice PHP per un CMS che stò sviluppando spero possa esserti utile per capire la logica di come tenere selezionata una voce in una SELECT

Codice:
<div class="campo <?php echo $class_corso; ?>">
		<label for="f_corso">Corso *</label>
		<select id="f_corso" name="corso">
			<option value="0">-Seleziona un Corso-</option>
			<?php
			$sql = "SELECT * FROM corsi ORDER BY corso_nome asc";
			$result = mysql_query($sql);
			if($row = mysql_fetch_array($result)){
				do{
				
					$selected = "";		
					if($row["corsoID"] == $_REQUEST["corso"]){
						$selected = 'selected="selected"';
					}
				
				?>
				<option value="<?php echo $row['corsoID']; ?>" <?php echo $selected; ?>><?php echo $row['corso_nome']; ?></option>
				<?php
				}while($row = mysql_fetch_array($result));
			}
			?>
		</select>
	</div>
La parte che ho evidenziato ti mostra come nel ciclo DO WHILE mettere l'attributo SELECTED alla OPTION.

quando recupero i dati dal DB farò in modo che:

$_REQUEST["corso"] = $row["corsoID"];

la variabile $_REQUEST["corso"] contenga l'informazione sull'ID del corso indicato a DB.

perchè lo metto in una variabile globale di $_REQUEST[]?

Lo faccio perchè se nell'interfaccia utente l'utente seleziona una OPTION diversa e poi fa un SUBMIT la stessa mi tiene in memoria l'input dell'utente e non quello che avevo prima recuperato dal DB.

Spero di essere stato chiaro e che ti possa tornare utile.

Ciao
  Rispondi citando il messaggio o parte di esso
Old 19-11-2006, 01:35   #3
shambler1
Senior Member
 
L'Avatar di shambler1
 
Iscritto dal: Jul 2001
Messaggi: 2776
Grazie, ora me la studio
shambler1 è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2006, 18:45   #4
bjt2
Senior Member
 
L'Avatar di bjt2
 
Iscritto dal: Apr 2005
Città: Napoli
Messaggi: 6817
Quote:
Originariamente inviato da shambler1
Salve a tutti
Vorrei recuperare dei dati dal db nelle checkbox facendo in modo che risultanino gia checcate, per poi poterle eventualmente cambiare.
Se non le cambio, la pagina deve scrivere nuovamente il valore gia selezionato in precendenza.
So come fare il passaggio nelle text box

Ma mi sono inchiodato per quanto riguarda le check box e le select
mi hanno suggerito questo codice ma non funziona, mi da errore di sintassi.


<% rs.MoveFirst
If not rs.EOF then
while not rs.EOF
if rs('Sesso')='maschio' then
Response.Write "<td width='30'>maschio</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='maschio' checked></td></tr><tr>
<td width='30'>femmina</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='Femmina'></td></tr><tr>"
else
Response.Write "<td width='30'>maschio</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='maschio'></td></tr><tr>
<td width='30'>femmina</td><td width='30' colspan='2' ><input type='radio' name='Sesso' value='Femmina' 'checked'></td></tr><tr>"
End if
rs.MoveNext
Wend
End if %>



con le select non ho la più pallida idea di come poter fare.
La select registra una provincia, poniamo Genova.

Allora , io recupero i dati del form e vorrei trovarmi la select con "genova " selezionata e poi eventualmente cambiarla.
Aiutatemi che sto messo molto male coi tempi

Il codice che hai scritto mi sembra corretto. Tranne che in VBSCRIPT ci vogliono i DOPPI apici per le stringhe. Quindi non rs('sesso')='maschio', MA rs("sesso")="maschio"

Vedi se è solo quello il problema, ma a me pare di si...

Ciao.
__________________
0 A.D. React OS
La vita è troppo bella per rovinarsela per i piccoli problemi quotidiani...
IL MIO PROFILO SOUNDCLOUD! IL MIO CANALE YOUTUBE! IL MIO PLUGIN VST PROGRAMMABILE!
bjt2 è offline   Rispondi citando il messaggio o parte di esso
Old 20-11-2006, 15:01   #5
shambler1
Senior Member
 
L'Avatar di shambler1
 
Iscritto dal: Jul 2001
Messaggi: 2776
Il codice funziona ora, solo che ha un effetto collaterale, diciamo , cosi , che non riesco a spiegarmi. Forse quel codice blocca l'rs ?
Ma in che modo?
Succede che , se metto in sequenza diversi codici di ricerca dei pulsanti di opzione ( due per il sesso, campo "sesso", tre per lo stato civile : campo "stato civile") , questi vengono correttamente richiamati.
Invece la ricerca per gli altri input non funziona più.
Questo è il codice:
Codice:
set rs = Server.CreateObject("ADODB.RecordSet")
rs.open sql,conn_base

 rs.MoveFirst
If not rs.EOF then
   while not rs.EOF
      if trim(rs("statocivile"))="celibe" then
      
         Response.Write "<td width='30'>celibe</td><td width='30'  ><input type='radio' name='statocivile' value='celibe' checked></td></tr><tr>"
         Response.Write "<td width='30'>nubilee</td><td width='30'  ><input type='radio' name='statocivile' value='nubile' ></td></tr><tr>"
         Response.Write "<td  width='30'>coniugato</td><td width='30' ><input type='radio' name='statocivile' value='coniugato'></td></tr><tr>"
      elseif  trim(rs("statocivile"))="nubile" then
      
         Response.Write "<td width='30'>'celibe</td><td width='30' ' ><input type='radio' name='statocivile' value='celibe'></td></tr><tr>"
         Response.Write "<td  width='30'>nubile</td><td width='30'  ><input type='radio' name='statocivile' value='nubile' checked></td></tr><tr>"
            
        Response.Write "<td width='30'>coniugato</td><td width='30'  ><input type='radio' name='statocivile' value='coniugato' ></td></tr><tr>"
      else
      Response.Write "<td width='30'>celibe</td><td width='30' ' ><input type='radio' name='statocivile' value='celibe'></td></tr><tr>"
         Response.Write "<td  width='30'>nubile</td><td width='30'  ><input type='radio' name='statocivile' value='nubile' ></td></tr><tr>"
         Response.Write "<td width='30'>coniugato</td><td width='30'  ><input type='radio' name='statocivile' value='coniugato' checked></td></tr><tr>"
      
      End if   
      
              
      rs.MoveNext
   Wend
End if %>  



<tr><td ><h5>figli</h5></td>
<td colspan="2" ><input type=text name="figli" value="<%=trim(rs("figli"))%>" size="50"></td></tr>

Sopra il codice dello stato civile c'è un codice uguale ed entrambi funzionano.
Sotto quel codice, l'input type= text e il select non funzionano più e restituiscono quell'errore.
Il codice di ricerca della casella di testo,che precede il codice invece funziona benissimo.


Sotto alle check box, il cui codice funziona benone, si vede invece una casella di testo minuscola con la scritta : "<font face=" ma il codice è questo:
Codice:
<td colspan="2" ><input type=text name="figli" value="<%=trim(rs("figli"))%>" size="50"></td></tr>



all'interno della casella di testo, invece del valore, si legge : font face , un tag che non è scritto da nessuna parte nella tabella.
shambler1 è offline   Rispondi citando il messaggio o parte di esso
Old 20-11-2006, 18:46   #6
bjt2
Senior Member
 
L'Avatar di bjt2
 
Iscritto dal: Apr 2005
Città: Napoli
Messaggi: 6817
Quell'errore ti esce perchè tu leggi tutta la tabella fino al'EOF e poi cerchi di leggere il campo figli oltre la fine dei record! E' per questo che ti da errore! Il campo figli è di tutti i record, vero? Se è così, quel pezzo di codice devi metterlo DENTRO al while!
__________________
0 A.D. React OS
La vita è troppo bella per rovinarsela per i piccoli problemi quotidiani...
IL MIO PROFILO SOUNDCLOUD! IL MIO CANALE YOUTUBE! IL MIO PLUGIN VST PROGRAMMABILE!
bjt2 è offline   Rispondi citando il messaggio o parte di esso
Old 21-11-2006, 17:58   #7
shambler1
Senior Member
 
L'Avatar di shambler1
 
Iscritto dal: Jul 2001
Messaggi: 2776
Vuoi ridere? Si bloccava tutto perchè il recordset era aperto sopra...

Grazie comunque, da solo nn ci sarei arrivato.
Codice funzionante.
Codice:
if trim(rs("sesso"))="maschio" then
      
         Response.Write "<td width='30'>maschio</td><td width='30'  ><input type='radio' name='Sesso' value='maschio' checked></td></tr><tr>"
         Response.Write "<td  width='30'>femmina</td><td width='30' ><input type='radio' name='Sesso' value='Femmina'></td></tr><tr>"
      else
         Response.Write "<td width='30'>maschio</td><td width='30' ' ><input type='radio' name='Sesso' value='maschio'></td></tr><tr>"
         Response.Write "<td  width='30'>femmina</td><td width='30'  ><input type='radio' name='Sesso' value='Femmina' checked></td></tr><tr>"
      End if
shambler1 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno Lenovo ThinkPad X1 Carbon Gen 14: il business ul...
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro Jabra Evolve3 85: le cuffie sia per l'intratteni...
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
I satelliti spia russi Kosmos 2613 e Kos...
GTA VI: online la nuova mega galleria co...
Edits, l'app di Instagram, sbarca gratis...
Claude Code: il bug che ha spedito l'ema...
Perplexity lancia Teammates, gli agenti ...
Niente più datacenter? Gli eletto...
La Cina avrebbe approvato lo sviluppo de...
Epson EF-72 alla prova: Google TV, audio...
AST SpaceMobile annuncia il razzo spazia...
Apple taglia il budget AI dei dipendenti...
Fisco e intelligenza artificiale, come c...
Synology BC510 e CC410W, la videosorvegl...
600.000 chip NVIDIA fermi a Hong Kong: l...
La Cina punta tutto sull'allunaggio con ...
LG Italia compie 30 anni: gli italiani v...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v