- Netlik için düzenlenmiştir.
Veritabanı:
tblModule, contains a list of modules that can be enabled or disabled. tblData, contains a list of trusts and the modules they have enabled. This links to tblModule on tblData.M01 = tblModule.mod_key
PHP sayfası bir indeks sayfasından erişilebilir ve bir tek güven için tblData döndürülen kayıtları sınırlamak için, bu sayfaya bir değişken lstModTrust geçer. tblData.trust_key
Bir sorgu tüm modüllerin bir listesini verir, qryModuleList hangi çalışır. Bu, mevcut bir modül tablosu oluşturmak için kullanılır. Her satır modül adı tblModules.mod_name, module code tblModules.mod_code ve bir onay kutusu gösterir.
qryModData, bir tek güven için etkin olan modüllerin bir listesini döndürmek, ve karşılık gelen onay kutularını tabloda işaretli gerekir.
Bu sayfa daha sonra bir güven modüllerini etkinleştirmek ve devre dışı bırakmak için kullanılır. Bir modül girişi unticked ise o işaretli ise bir giriş eklenir, tblData silinmiş olacak ve daha sonra herhangi bir değişiklik DB değişiklik yoksa.
Şu anda ben sorun onay kutularını qryModData dayalı doğru işaretlemiştir alıyorum yaşıyorum
Herhangi bir düşünce kimse?
- Kod dahil etmek Düzenlendi -
<table width="50%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Module</td>
<td>Module Code</td>
<td> </td>
</tr>
<?php do { ?>
<tr>
<td><?php echo $row_qryModuleList['mod_name']; ?></td>
<td><?php echo $row_qryModuleList['mod_code']; ?></td>
<td><input <?php if (!(strcmp($row_qryModData['M01'],$row_qryModuleList['mod_code']))) {echo "checked=\"checked\"";} ?>name="chkMod" type="checkbox" id="chkMod" value="<?php echo $row_qryModData['M01']; ?>" /></td>
</tr>
<?php } while ($row_qryModuleList = mysql_fetch_assoc($qryModuleList)); ?>
</table>
Sonra bilet için kutuları ayarlamak için kullanmaya çalışıyorum iki SQL sorguları, tablo oluşturmak için listesini oluşturur biri ve ikinci var.
qryModuleList
SELECT *
FROM tblmodules
ORDER BY mod_name ASC
qryModData
SELECT *
FROM tbldata
WHERE trust_key = varTrust
varTrust URL değişken çekilir.
Ilk etapta kodu dahil değil özür dilemek için.
- Yeni kod düzenle.
<?php while ($row_qryModuleList = mysql_fetch_assoc($qryModuleList)) { ?>
<tr>
<td><?php echo $row_qryModuleList['mod_name']; ?></td>
<td><?php echo $row_qryModuleList['mod_code']; ?></td>
<td><input <?php if (strcmp($row_qryModData['M01'],$row_qryModuleList['mod_key']) != 0) {echo "checked=\"checked\"";} ?>name="chkMod" type="checkbox" id="chkMod" value="<?php echo $row_qryModData['M01']; ?>" /></td>
</tr>
<?php } ; ?>
- Yeni Kod Düzenlendi.
<tr class="tblHead">
<td>Module</td>
<td>Module Code</td>
<td>Enabled\Disabled</td>
</tr>
<?php
$mod_data = array();
while ($row_qryModData = mysql_fetch_assoc($qryModData))
array_push($mod_data, $row_qryModData['M01']);
$currentRow = 0;
while ($row_qryModuleList = mysql_fetch_assoc($qryModuleList)) {
?>
<tr bgcolor="<?php echo($currentRow++ % 2)?"#CCFFFF":"#FFCCFF";?>">
<td><?php echo $row_qryModuleList['mod_name']; ?></td>
<td><?php echo $row_qryModuleList['mod_code']; ?></td>
<td><input <?php if (false !== (array_search($mod_data, $row_qryModuleList['mod_key']))) echo "checked=\"checked\""; ?> name="chkMod" type="checkbox" id="chkMod" value="<?php echo $row_qryModData['M01']; ?>" /></td>
</tr>
<?php } ; ?>