[eluser]jedd[/eluser]
[quote author="darytas" date="1246626178"]
Code:
<select name="smsform[phonebook][]" id="phonebook-list" class="field select large" size="6" multiple="multiple">
[/quote]
Should there be some dollar signs in there somewhere or do you believe square brackets come through that kind of gauntlet unscathed (actually - do they? I've never tried - it looks dangerous)
And rather than this:
Quote:Code:
<select name="smsform[phonebook][]" id="phonebook-list" class="field select large" size="6" multiple="multiple">
<?php foreach($phonebooks as $phonebook) : ?>
<optgroup label="<?=$phonebook['name']?>">
<?php foreach($entries as $entry)
if ($entry['pid'] == $index) :
?>
<option value="<?= $entry['number']?>" <?= set_select('smsform[phonebook][]', $entry['number'])?>><?= $entry['name']?> (<?= $entry['number']?>)</option>
<?php endif; ?>
</optgroup>
<?php endforeach; ?>
</select>
Have you considered committing to PHP and doing something like this instead?
Code:
<?php
echo "<select name=\"". $smsform['phonebook'][] ."\" id=\"phonebook-list\" class=\"field select large\" size=\"6\" multiple=\"multiple\">\n";
foreach ($phonebooks as $phonebook) {
echo "<optgroup label=\"". $phonebook['name'] ."\">\n";
foreach ($entries as $entry) {
if ($entry['pid'] == $index) {
echo "<option value=\"". $entry['number'] ."\"". set_select('smsform[phonebook][]', $entry['number']) .">";
echo $entry['name'] ."(". $entry['number'] .")";
echo "</option>\n";
}
}
echo "</optgroup>\n";
}
echo "</select>\n";
Sure, you may be the person that finds the constant <?= ?> easy on the eye, but I can't but help think that one of the reasons you're confused by your own code is lines like this!
Code:
<option value="<?= $entry['number']?>" <?= set_select('smsform[phonebook][]', $entry['number'])?>><?= $entry['name']?> (<?= $entry['number']?>)</option>