Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Dynaaminen alasvetovalikko PHP:llä?

stars10 [08.02.2007 15:15:30]

#

Nyt olisi sellainen ongelma, että pitäisi saada tehtyä dynaaminen alasvetovalikko, jonka sisältöön vaikuttaa PHP koodilla saatu tiedustelu. Miten kutsun tälläisessä perinteisessä HTML alasvetovalikossa tuota PHP scriptiä?

<SELECT NAME="Action">
<OPTION>First
<OPTION>Second
</SELECT>

<OPTION> kohtien tilalle pitäisi saada dynaamisesti tietoa, jolloin niiden sisältö ja laatu olisi suoraan luettavissa, vaikka kuten alla testi.xml tiedostosta:

lomake.php

<?php
$xml = simplexml_load_file('testi.xml');
$result = $xml->xpath('person');
while(list( , $node) = each($result)) {

...

}
?>

Saako tuon koodin lomake.php joten liitettyä <SELECT> tagin sisälle ja miten tuo <OPTION> kohtien lisääminen tapahtuu...?

juha127 [08.02.2007 15:38:43]

#

Pistän tähen nyt jotain koodia josta voit ottaa mallia(toivottavasti)

<?php

//...
// Tiedoston haku jne.. tähen

$buffer .= "<select name=\"action\">";

for($i = 0; $i < count($filu); $i++) {
  // Tässä kohtaa napsaistaa vaikka muuttujaan $tiedot tarvittava
  $buffer .= "<option>" . $tiedot[0]; // $tiedot[0] on tarvittava tieto
}

echo $buffer;

?>

Toivottavasti ymmärsit idean

stars10 [08.02.2007 15:58:16]

#

Jep löysin jo tuon ylläolevan perusidean netistä, että PHP-scriptin sisällä echolla tulostetaan ne tagit, mutta miten saan tuon itse scriptin sijoitettua tuohon HTML-koodin sekaan, niin että se luetaan aina automaattisesti kun sivu ladataan ja saadaan alasvetovalikkoon sopiva määrä rivejä? Onko tuolle <SELECT> tagille joku parametri olemassa jolla saa koodin sisään?

Lebe80 [08.02.2007 16:29:05]

#

Echotat vain html:n oikeaan kohtaan.

index.php

<html>
<head>
</head>
<body>


Selectin pitäisi olla alla<br/>
<?php

//...
// Tiedoston haku jne.. tähen

$buffer .= '<select name="action">';

for($i = 0; $i < count($filu); $i++) {
  // Tässä kohtaa napsaistaa vaikka muuttujaan $tiedot tarvittava
  $buffer .= '<option value="'.$tiedot[0].'">' . $tiedot[0].'</option>'; // $tiedot[0] on tarvittava tieto
}
$buffer .="</select>";
echo $buffer;
?>
<br/>
Selectin pitäisi olla tuossa yllä<br/>
</body>
</html>

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta