Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Tekstiä textareaan

Sivun loppuun

peg [12.02.2006 16:55:42]

#

Toi textarea tulostuu teksti tiedostoon mutta ei tuohon textarea kenttään johon sen haluaisin. inputit toimivat
niinkuin pitääkin.

Inputteja en saanut kuitenkaan toimimaan foreach
ja count ++ sydeemillä. Mitenkähän se pitäisi tehdä?

Tää ei oo tärkee, mutta haluaisin osata..

/* index.php */
<?php
$tiedosto = file("teksti.txt");
print("Muokkaa tietojasi, ole hyvä. Korvaa kentässä olevat tiedot haluamillasi");
echo "<form method='POST' action='lisaa.php'>
<pre>
<input type='text' name='1' value='$tiedosto[0]' size='100';>
<input type='text' name='2' value='$tiedosto[1]' size='100';>
<input type='text' name='3' value='$tiedosto[2]' size='100';>
<input type='text' name='4' value='$tiedosto[3]' size='100';>
<input type='text' name='5' value='$tiedosto[4]' size='100';>
<input type='text' name='6' value='$tiedosto[5]' size='100';>
<textarea type='textarea' name='7' value='$tiedosto[6]' rows='6' cols='75'></textarea><br>
</pre>
  <input type='submit' value=' päivitä ' target='_self' name='B1'>
</form>";
?>

/* lisaa.php */
<?php
$tiedosto = fopen("teksti.txt", "w+");
fwrite ($tiedosto, $_POST['1']."\n".$_POST['2']."\n".$_POST['3']."\n".$_POST['4']."\n".$_POST['5']."\n". $_POST['6']."\n". $_POST['7']."\n");
fclose ($tiedosto);
print "<meta http-equiv='refresh' content='0;url=index.php'>";
?>

Antti Laaksonen [12.02.2006 17:02:42]

#

Textareaan tuleva teksti pitää kirjoittaa aloitus- ja lopetustagin väliin. Textarealla ei ole type- eikä value-attribuutteja.

Muut tekstikentät voi kyllä tulostaa silmukalla, minkälaista koodia kokeilit?

peg [12.02.2006 17:39:56]

#

kokeilin monella eri tavalla, mutta yks esim.

for ($i = 0; $i < count($tiedosto); $i++) {
   $yht += $tiedosto[$i];

Nyt alkaa pää olla jo ihan seis

peg [13.02.2006 00:41:34]

#

näin toimii muualla muttei textarean sisällä.

$tiedosto = file("teksti.txt");
for ($i = 0; $i < count($tiedosto); $i++) {
   echo ($i + 1) . ": " . $tiedosto[$i];
}

juha127 [13.02.2006 09:15:12]

#

<textarea type='textarea' name='7' value='$tiedosto[6]' rows='6' cols='75'>
$tiedosto = file("teksti.txt");
for ($i = 0; $i < count($tiedosto); $i++) {
echo ($i + 1) . ": " . $tiedosto[$i];
}
</textarea><br>

Laitoikko noin?
Jos niin siihen pitää laittaa php rivien ulkopuollelle php aloitus ja loputus tagit.

peg [13.02.2006 13:19:23]

#

Näin se toimii, mutta voi itku minkälainen viritys. Textarean sisään en muuten saanut tulostumaan. kokeiltu kaikki mahdolliset ja mahdottomat. silmukoilla en saanut toimimaan inputeissa enkä textareassa (for, foreach ja file)

/* index.php */
<?php
$tiedosto = file("teksti.txt");
print("Muokkaa tietojasi, ole hyvä. Korvaa kentässä olevat tiedot haluamillasi");
echo "<form method='POST' action='lisaa.php'>

<pre>
<input type='text' name='1' value='$tiedosto[0]' size='100';>
<input type='text' name='2' value='$tiedosto[1]' size='100';>
<input type='text' name='3' value='$tiedosto[2]' size='100';>
<input type='text' name='4' value='$tiedosto[3]' size='100';>
<input type='text' name='5' value='$tiedosto[4]' size='100';>
<input type='text' name='6' value='$tiedosto[5]' size='100';>
<textarea name='area' rows='6' cols='75'>$tiedosto[6]$tiedosto[7]$tiedosto[8]</textarea><br>
</pre>
  <input type='submit' value=' päivitä ' target='_self' name='B1'>
</form>";
?>

<?php
$tiedosto = fopen("teksti.txt", "w+");
fwrite ($tiedosto, "\n");
$_POST['1']."\n".$_POST['2']."\n".$_POST['3']."\n".$_POST['4']."\n".$_POST['5']."\n". $_POST['6']."\n". $_POST['7']
fclose ($tiedosto);
print "<meta http-equiv='refresh' content='0;url=index.php'>";
?>

juha127 [13.02.2006 17:11:55]

#

Ja nyt kun sul on tuossa

<textarea name='area' rows='6' cols='75'>$tiedosto[6]$tiedosto[7]$tiedosto[8]</textarea>

Pitää $tiedosto[6]$tiedosto[7]$tiedosto[8] laittaa piste jokaisen muuttujan väliin.
ks. PHP-opas Osa 2
Tuo pätee samanlailla

peg [14.02.2006 15:29:09]

#

Paitsi jos laittaa tuon pisteen tuonne väliin niin se tulostaa sen pisteen mikä ei ole tarkoitus.

jideko [14.02.2006 16:51:52]

#

Jos sinne niitä pisteitä haluaa laittaa niin täytyy tuo kirjoittaa:

echo "<textarea name=\"area\" rows=\"6\" cols=\"75\">".$tiedosto[6].$tiedosto[7].$tiedosto[8]."</textarea>";

Sivun alkuun

Vastaus

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

Tietoa sivustosta