Tässäpä hieman erikoinen valintalistan täyttöongelma. Lehtien nimet olisi kätevintä
hakea valintalistoihin MySQL-kannasta:
<?php include("include/db_inc.php"); $link=openDB(); ?>
<?php $sql = "select distinct lehti from lehtitaulu"; $result=mysql_query($sql,$link); if(mysql_num_rows($result)==0) { print "Ei lehtia tietokannassa!"; exit(); } ?>
<select NAME="Lehti[]" multiple size="4">
<?php while($row=mysql_fetch_assoc($result)) { print "<option value=\"".$row['Lehti']."\">".$row['lehti']."</option>\n"; } ?>
</select>
Osa lehtien nimistä talletetaan kuitenkin kantaan lyhenteinä, joten hakeminen suoraan
kannasta ei onnistu. Lyhenteiden kääntäminen tapahtuu funktiot.php -tiedostosta löytyvän
funktion avulla:
<?php function AvaaLehdennimi(&$lehtia) { switch($lehtia) { case "lyhenne": $lehtia="koko nimi"; break; default: break; } } ?>
Näin ollen muuttujaan haetun lehden nimen saisi käännettyä normaalimuotoon ja alkamaan
isoilla alkukirjaimilla (kaikki kantaan tallennetut lehtien nimet alkavat pienellä
alkukirjaimella):
?>
Olisiko sitten mahdollista saada näkymään näin käsitellyt lehtien nimet valintalistaan,
vai onko viisaampi tyytyä täyttämään valintalistat html:ssä?
Etkös voi kannasta hakiessa ajaa kaikki "lehdet" funktiosi läpi, jolloin Optionissa arvo muuttuu:
<?php while($row=mysql_fetch_assoc($result)){ $Lehtiseni = $row['Lehti']; echo "<option value=\"".$Lehtiseni ."\">".ucfirst(AvaaLehdennimi($Lehtiseni))."</option>\n"; } ?>
Vai oliko tästä edes kysymys?
Ihan oikein ymmärsit kysymyksen. Kiitos vaan avusta. Testailen "lehtien" ajamista funktion läpi jo hakuvaiheessa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.