Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Uutisten kirjoittaminen

remontti-reiska [20.03.2004 21:39:53]

#

<form action="uutiset2.php" method="post">
<b>Ensimmäinen uutinen</b>
<br>
Otsikko: <br>
<input type="text" name="uutinen"><br>
Aika: <br>
<input type="text" name="aika"><br>
Tekijä:<br>
<textarea name="lähettäjä"></textarea><br>
<br>
<br>
<input type="submit" value="Päivitä uutinen" name="ok">
</form>

<?php
if (isset($ok))
{
//muodostetaan yhteys tietokantapalvelimeen
$yhteys = mysql_connect("", "", "");
//valitaan tietokanta "test"
mysql_select_db("phpplaza", $yhteys) or die("Tietokantaa ei löytynyt!");
mysql_query("CREATE TABLE uutiset (uutinen TEXT, aika TEXT, lähettäjä TEXT)", $yhteys);
mysql_query("INSERT INTO uutiset (uutinen, aika, lähettäjä) VALUES ('$uutinen', '$aika', '$lähettäjä')", $yhteys);

$kysely = "SELECT * FROM uutiset";
//suoritetaan kysely
$haku = mysql_query($kysely, $yhteys) or die("Virhe kyselyssä!");
   $otsikko = mysql_result($haku, $i, "uutinen");
   $aika = mysql_result($haku, $i, "aika");
   $lähettäjä = mysql_result($haku, $i, "lähettäjä");

//suljetaan yhteys


echo $otsikko ;
echo $aika;
echo $lähettäjä;

mysql_close($yhteys);
}
?>

Eli tuossa on se ongelmana, ettei se kirjoita sitä uutista echolla. Jos apua saisi, niin hyvin menisi :).

Olga [20.03.2004 22:01:06]

#

Mikä on tuo hämärä $i-muuttuja tuolla? Ilmeisesti oot unohtanu silmukan tuon haun ympäriltä. Siitäkin huolimatta käytä mysql_result-funktion sijaan vaikka mysql_fetch_row:ta:

<?php
$kysely = "SELECT * FROM uutiset";
$haku = mysql_query($kysely,$yhteys) or die("Virhe kyselyssä!");
while($rivi = $mysql_fetch_row($haku)) {
  print $rivi[0]."<br />";
  print $rivi[1]."<br />";
  print $rivi[2]."<br />";
} // while
?>

remontti-reiska [20.03.2004 22:19:19]

#

Valittaa:
while($rivi = $mysql_fetch_row($haku)) {

Virheilmoitus:
Fatal error: Call to undefined function: ()

Vielä helppiä kaivataan :).

Juhis [20.03.2004 22:34:42]

#

while($rivi = mysql_fetch_row($haku)) {

Olga [20.03.2004 23:19:22]

#

Hupsheijjaa, rahankiilto näköjään silmissä ku noita dollarimerkkejä viljelen ylimääräisiä :)

remontti-reiska [21.03.2004 19:52:57]

#

Miksi tuo koodi tulostaa uutisen niin monta kertaa?

Olga [21.03.2004 20:09:32]

#

Se hakee kaikki rivit taulusta. Käytä WHERE:ä ja LIMIT:iä jos haluat rajata hakua.

<?php
$result = mysql_query("SELECT * FROM uutiset WHERE lahettaja='Esko' ORDER BY aika DESC LIMIT 10",$yhteys);
?>

Esimerkkikoodi hakee laskevassa aikajärjestyksessä 10 Eskon lähettämää uutista.

Vastaus

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

Tietoa sivustosta