Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: pieni php-juttu

Sivun loppuun

prinne [01.04.2003 13:52:34]

#

kuinka option elementin arvo saadaan ylikirjoitettua esim, ettei käyttäjän tarvitse valita uudelleen vaihtoehtoa valituksi palatessaan lomakkeen täyttöön. Ilm. selected-attribuutti pitää ylikirjoittaa, mutta miten?

Teme [01.04.2003 15:19:14]

#

Aseta keksi käyttäjälle ja sen perusteella sitten vaihtoehto valitaan. Kuinkas monta vaihtoehtoa siinä onkaan? Oikeastaan voisit laittaa tänne lähdekoodin siitä lomakkeesta niin tiedän että miten teen sen... kait...

Edit: kirjoitusvirheitä

prinne [02.04.2003 11:44:47]

#

elikkä käytössä on get-metodi ja isset onpi jo käytssä, ainoa vaan etten hoksaa miten saan ylikirjoitettua esim Pöytäkirjat-vaihtoehdon selected-attribuutin jos käyttäjä oli valinnut sen ja palaa lomakkeen täyttöön, kun hän esim. jätti jonkun muun kohdan lomakkeesta täyttämättä.

<select id="kategoria" name="kategoria">
 <option value="0">Valitse kategoria -></option>
 <option value="1">Pöytäkirjat</option>
 <option value="2">Muistiot</option>
 <option value="3">Muut</option>
 </select>
</p>

Muiden tekstikenttien ylikirjoitus oli helppoa, tyyliin:

<input id="otsikko" size="70" type="text" name="otsikko" value="<?php echo $_GET["otsikko"]; ?>" />

Voisinkohan enää vaikeammin selittää =)

Blaze [02.04.2003 17:20:40]

#

<?php
echo "<select id=\"kategoria\" name=\"kategoria\">";
if($_GET["kategoria"]==0){
  echo "<option value=\"0\" selected=\"selected\">Valitse kategoria -></option>";}
  else{
  echo "<option value=\"0\">Valitse kategoria -></option>";}
if($_GET["kategoria"]==1){
  echo "<option value=\"1\" selected=\"selected\">Pöytäkirjat</option>";}
  else{
  echo "<option value=\"1\">Pöytäkirjat</option>";}
  ... jne.
?>

prinne [03.04.2003 10:11:26]

#

No mutta kiitosta oikein paljon! It's alive!!!

Teme [05.04.2003 19:04:16]

#

Blaze: ei tartte laittaa näin:

<option value="0" selected="selected">Moi</option>

Riittää kun se on näin:

<option value="0" selected>Moi</option>

thefox [05.04.2003 20:23:47]

#

Kumpikin tapa on sinänsä validia HTML:ää, että ei sillä lienee paljoakaan väliä kumpaa käyttää.

Blaze [05.04.2003 22:00:22]

#

lainaus:

Blaze: ei tartte laittaa näin

Näyttääpi tuo XHTML olevan meikäläisellä jo verissä...

NiKC [16.05.2003 09:53:00]

#

onpahan vanha ketju mutta vastaanpa silti.
eli itselläni on tapana tehdä nuo selectit yms iteroimalla jolloin tuommoinen tilatallennus on helppo toteuttaa, optioneita on helppo lisäillä eikä tarvii ryhtyä tuohon if-else -helvettiin...

koodia ei ole testattu joten en takaa copy-paste toimivuutta mutta idea selviää...

<select name="kategoria">
   <?php if( isset($kategoria) ): ?>
      <option value="-1" selected> Valitse kategoria
   <?php else: ?>
      <option value="-1" selected> Valitse kategoria
   <?php endif; ?>

   <?php
   function htmlOption( $cap, $val, $sel=false ) {
      printf( "<option value=\"%s\" %s>%s", $val, ($sel ? "selected" : ""), $cap );
   }

   $kategoriat= array( "Pöytäkirjat", "Muistiot", "Muut" );
   for( $i=0; $i<sizeof($kategoriat); $i++ ) {
      htmlOption( $kategoriat[$i], $i, (isset($kategoria) && ($kategoria == $i)) );
   }
   ?>
</select>
// hmm

Sivun alkuun

Vastaus

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

Tietoa sivustosta