Importare valori da una tabella MySQL in una tabella con checkbox

egialma

Nuovo Utente
3 Ott 2012
29
0
0
Ciao a tutti, ho un problemino e non riesco a continuare, ho trovato diverse discussioni su questo argomento ma non sono stato in grado di adattare la possibili soluzioni al mio problema.

Sul server MySQL ho una tabella: Worked, Sito, Priority, Analyzed, Permission, Target

Il campo Worked contiene una stringa
Il campo Sito contiene un codice
Il campo Priority contiene numeri
Il campo Analyzed contene un 1 o 0 che corrispondono allo stato di un flag/checkbox.
Il campo Permission contene un 1 o 0 che corrispondono allo stato di un flag/checkbox.
Il campo Target contene un 1 o 0 che corrispondono allo stato di un flag/checkbox.

Ora vorrei visualizzare in una tabella lo stato di determinati Siti filtrando sul campo Worked.

Ho provato a fare questo:

HTML:
<table border=1> 
	<tr> 
		<td><b>Site</b></td> 
		<td><b>Proirity</b></td> 
		<td><b>Analyzed</b></td> 
		<td><b>Permission</b></td>
		<td><b>Target</b></td>
		<td><b>Choose</b></td>
	</tr>
	<?php
		$sqlqueryWorked = "SELECT Site, Priority, Analyzed, Permission, Target
					FROM RequestParable_t
					WHERE (RequestParable_t.Worked = '{$_GET['Worked']}')
					ORDER BY RequestParable_t.Priority";
		$resultqueryWorked = mysql_query($sqlqueryWorked);
		while ($queryWorkedList = mysql_fetch_array($resultqueryWorked)) {
			echo("<tr><td>".$queryWorkedList['Site']."</td>");
			echo("<td>".$queryWorkedList['Priority']."</td>"); 
			echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']."/></td>");
			echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']."/></td>");
			echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']."/></td>");
			echo("<td><a href=parable.php?Short_Code=".$queryWorkedList['Site'].">Go</a></td></tr>");
		}
	?>
</table>
Risultato:

Site------Proirity------Analyzed-----Permission-----Target------Choose
AAFRDE-------1--------------------------------------------Go
ASF3D5-------2--------------------------------------------Go


Nella tabella mi sono ritrovato i checkbox creati ma senza valore.

Successivamente dovrò salvare lo stato dei checkbox sul database, ma questo lo vedrò poi, dopo aver capito come importare lo stato.

Qualcuno sa darmi qualche indicazione?


Grazie
 

f107

Utente Attivo
7 Ago 2012
181
4
18
Roma
Ciao a tutti, ho un problemino e non riesco a continuare, ho trovato diverse discussioni su questo argomento ma non sono stato in grado di adattare la possibili soluzioni al mio problema.

Sul server MySQL ho una tabella: Worked, Sito, Priority, Analyzed, Permission, Target

Il campo Worked contiene una stringa
Il campo Sito contiene un codice
Il campo Priority contiene numeri
Il campo Analyzed contene un 1 o 0 che corrispondono allo stato di un flag/checkbox.
Il campo Permission contene un 1 o 0 che corrispondono allo stato di un flag/checkbox.
Il campo Target contene un 1 o 0 che corrispondono allo stato di un flag/checkbox.

Ora vorrei visualizzare in una tabella lo stato di determinati Siti filtrando sul campo Worked.

Ho provato a fare questo:

HTML:
<table border=1> 
	<tr> 
		<td><b>Site</b></td> 
		<td><b>Proirity</b></td> 
		<td><b>Analyzed</b></td> 
		<td><b>Permission</b></td>
		<td><b>Target</b></td>
		<td><b>Choose</b></td>
	</tr>
	<?php
		$sqlqueryWorked = "SELECT Site, Priority, Analyzed, Permission, Target
					FROM RequestParable_t
					WHERE (RequestParable_t.Worked = '{$_GET['Worked']}')
					ORDER BY RequestParable_t.Priority";
		$resultqueryWorked = mysql_query($sqlqueryWorked);
		while ($queryWorkedList = mysql_fetch_array($resultqueryWorked)) {
			echo("<tr><td>".$queryWorkedList['Site']."</td>");
			echo("<td>".$queryWorkedList['Priority']."</td>"); 
			echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']."/></td>");
			echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']."/></td>");
			echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']."/></td>");
			echo("<td><a href=parable.php?Short_Code=".$queryWorkedList['Site'].">Go</a></td></tr>");
		}
	?>
</table>
Risultato:

Site------Proirity------Analyzed-----Permission-----Target------Choose
AAFRDE-------1--------------------------------------------Go
ASF3D5-------2--------------------------------------------Go


Nella tabella mi sono ritrovato i checkbox creati ma senza valore.

Successivamente dovrò salvare lo stato dei checkbox sul database, ma questo lo vedrò poi, dopo aver capito come importare lo stato.

Qualcuno sa darmi qualche indicazione?


Grazie
Nel senso che non sono spuntati?
Se si ti manca un pezzo fondamentale.... checked
per maggiori info:
http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_input_checked

altrimenti scusa ma non ho capito cosa ti serve...
 

egialma

Nuovo Utente
3 Ott 2012
29
0
0
Ti ringrazio per esserti interessato al mio problema, ho provato ad usare la tua proposta, ma inserendo la voce come riportato

PHP:
echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']." checked=".$queryWorkedList['Analyzed']."/></td>");
echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']." checked=".$queryWorkedList['Permission']."/></td>");
echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']." checked=".$queryWorkedList['Target']."/></td>");
ottengo la spunta su tutte le checkbox di tutte le righe della tabella.
In realtà io vorrei che le spunte riflettessero la situazione salvata sul db

Per intenderci nel db per i siti utilizzati come esempio ho questa situazione:

Site------Proirity------Analyzed-----Permission-----Target------Worked
AAFRDE-------1----------1-------------1-----------1----------Fatto
ASF3D5-------2----------1-------------0-----------0----------Fatto

Come output vorrei ottenere la spunta sui singoli checkbox in corrispondenza del valore 1.

Grazie
 

f107

Utente Attivo
7 Ago 2012
181
4
18
Roma
Ti ringrazio per esserti interessato al mio problema, ho provato ad usare la tua proposta, ma inserendo la voce come riportato

PHP:
echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']." checked=".$queryWorkedList['Analyzed']."/></td>");
echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']." checked=".$queryWorkedList['Permission']."/></td>");
echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']." checked=".$queryWorkedList['Target']."/></td>");
ottengo la spunta su tutte le checkbox di tutte le righe della tabella.
In realtà io vorrei che le spunte riflettessero la situazione salvata sul db

Per intenderci nel db per i siti utilizzati come esempio ho questa situazione:

Site------Proirity------Analyzed-----Permission-----Target------Worked
AAFRDE-------1----------1-------------1-----------1----------Fatto
ASF3D5-------2----------1-------------0-----------0----------Fatto

Come output vorrei ottenere la spunta sui singoli checkbox in corrispondenza del valore 1.

Grazie
echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']." ($queryWorkedList['Analyzed']checked /></td>");
echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']." checked /></td>");
echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']." checked /></td>");

PHP:
echo
sprintf(
"
<td><input type='checkbox' name='Analyzed[]' value='%d' %s /></td>
<td><input type='checkbox' name='Permission[]' value='%d' %s /></td> 
<td><input type='checkbox' name='Target[]' value='%d' %s /></td>
",
$queryWorkedList['Analyzed'],
($queryWorkedList['Analyzed'] == 1) ? 'checked ': '',
$queryWorkedList['Permission'],
($queryWorkedList['Permission'] == 1) ? 'checked ': '',
$queryWorkedList['Target'],
($queryWorkedList['Target'] == 1) ? 'checked ': ''
);
Prova cosi...
 

egialma

Nuovo Utente
3 Ott 2012
29
0
0
Grazie ancora...

Ho provato la tua soluzione ma non funziona, lascia tutti i checkbox vuoti.

Però traendo spunto dalla tua soluzione ho provato questa, forse non molto funzionale, ma funzionante...

PHP:
while ($queryWorkedList = mysql_fetch_array($resultqueryWorked)) {
        echo("<tr><td>".$queryWorkedList['Site']."</td>");
	echo("<td>".$queryWorkedList['Priority']."</td>");
	If ($queryWorkedList['Analyzed']){
	        echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']." checked/></td>");
	}
	else{
	        echo("<td><input type=checkbox name=Analyzed[] value=".$queryWorkedList['Analyzed']." /></td>");
	}
	If ($queryWorkedList['Permission']){
		echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']." checked/></td>");
	}
	else{
		echo("<td><input type=checkbox name=Permission[] value=".$queryWorkedList['Permission']." /></td>");
	}
	If ($queryWorkedList['Target']){
		echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']." checked/></td>");
	}
	else{
		echo("<td><input type=checkbox name=Target[] value=".$queryWorkedList['Target']." /></td>");
	}
	echo("<td><a href=parable.php?Short_Code=".$queryWorkedList['Site'].">Go</a></td></tr>");
}
Ora però devo salvare lo stato dei checkbox all'uscita della pagina, cliccando un tasto close
Non avendo ben preciso il funzionamento degli array mi potreste dare qualche dritta?

Se ho capito qualcosina dovrei trovarmi tre array:

Analyzed
Permission
Target

Richiamabili dalle parentisi [] anche se non so esattamente come, e il valore del checkbox dove lo trovo?

Avevo pensato ad un ciclo for o while per scrivere nel database tramite una query MySql UPDATE.

Cosa mi consigliate?

Grazie