Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: etsi virhe :-)

Sivun loppuun

Hesse [03.03.2005 17:52:53]

#

elikkä tällänen php-pätkä ei toimi käsittämättömästä syystä:

----------------------------------------------------

<html>
<BODY BGCOLOR="CC0099">
</html>
<?php
$tiedosto = "viesti.txt";
$loki = "loki.txt";
$ip = $_SERVER['REMOTE_ADDR'];
$aika = date("H:i d.m.y $data");
$data = nl2br("<font size=4>$pulina <br><br> - $nimimerkki ,  $aika -<br><br><br></font>") . "\n";
$dataloki = strtr("---|$nimimerkki --- $ip --- $pulina --- $aika|---", "\n", "*") . "\n";
if ($ip == "")
{
print "Sinut on bannattu!";
}
elseif ($pulina == "")
{
echo "Kirjoita ensiksi viesti!";
}
elseif ($nimimerkki == "")
{
echo "Nimimerkki puuttuu!";
}
elseif (strlen($pulina) > "200")
{
echo "Viesti on liian pitkä! Jos kirjoitat asiallista juttua ja teksti osoittautui liian pitkäksi, katkaise se kahteen eri viestiin.";
}
else
{
$fp = fopen($tiedosto, 'a');
fwrite ($fp, $data);
fclose ($fp);
$fp = fopen($loki, 'a');
fwrite ($fp, $dataloki);
fclose ($fp);
print "Viestisi on lisätty onnistuneesti! <a href=index.php target=iso>Jatka</a> pulinaboxissa.";
?>

--------------------------------------------------

muuttujat $pulina ja $nimimerkki saadaan lomakkeesta. Yritin lisätä pätkään uuden lisäyksen, mutta en saanut sitä toimimaan, joten päätin olla laittamatta sitä ollenkaan. Sitten yhtäkkiä mikään ei enää toimi, antaa vaan ilmotuksen:

----------------------------

Parse error: parse error, unexpected $ in (tiedoton nimi).php on line 36

----------------------------

Ajattelin tehä koko juttu uudestaan, mutta päätinkin kokeilla, jos joku löytäis viel viime hetkellä virheen...

Mod. Edit: Kooditagit lisätty, lue ohjeet ja opettele käyttämään niitä itsekin.

Biotank [03.03.2005 17:55:01]

#

<html>
<BODY BGCOLOR="CC0099">
</html>
<?php
$tiedosto = "viesti.txt";
$loki = "loki.txt";
$ip = $_SERVER['REMOTE_ADDR'];
$aika = date("H:i d.m.y $data");
$data = nl2br("<font size=4>$pulina <br><br> - $nimimerkki , $aika -<br><br><br></font>") . "\n";
$dataloki = strtr("---|$nimimerkki --- $ip --- $pulina --- $aika|---", "\n", "*") . "\n";
if ($ip == "")
{
print "Sinut on bannattu!";
}
elseif ($pulina == "")
{
echo "Kirjoita ensiksi viesti!";
}
elseif ($nimimerkki == "")
{
echo "Nimimerkki puuttuu!";
}
elseif (strlen($pulina) > "200")
{
echo "Viesti on liian pitkä! Jos kirjoitat asiallista juttua ja teksti osoittautui liian pitkäksi, katkaise se kahteen eri viestiin.";
}
else
{
$fp = fopen($tiedosto, 'a');
fwrite ($fp, $data);
fclose ($fp);
$fp = fopen($loki, 'a');
fwrite ($fp, $dataloki);
fclose ($fp);
print "Viestisi on lisätty onnistuneesti! <a href=index.php target=iso>Jatka</a> pulinaboxissa.";
?>

Puhveli [03.03.2005 17:56:41]

#

Jos kuitenkin yrittäisit selvittää parse errorit itse, ne löytää parhaiten se joka on koodin kirjoittanut :(
muuttujat saat lomakkeesta joko $_GETillä tai $_POSTilla, riippuen formin methodista.
edit: hih ehdin tokaks :)

Gwaur [03.03.2005 17:56:42]

#

Enpä tiedä auttaako tämä ongelmaasi, mutta viimeisellä elsellä ei ainakaan ole lopettavaa }:tä.

Blaze [03.03.2005 17:58:18]

#

} puuttuu lopusta.

Ens kerralle vinkiks: harvempaa kiinnostaa debugata toisen spagettikoodia (tämä nyt oli niin helppo), virheilmotukset on sitä varten, että ne kertoo, mikä on vialla ja kooditagit onkeksitty.

rndprogy [03.03.2005 17:58:21]

#

viimisestä elsestä puuttuu }
Edit: no olimpa hidas

Hesse [04.03.2005 07:07:16]

#

Kiitos, nyt toimii taas. Koodiin turtuu ku tuijottelee sitä tarpeeks kauan, sillon ei nää edes yksinkertaasempiikaan virheitä :-)

blaze: kukaan ei pakottanu sua tulee tänne ja yrittää lukee mun virhekoodii. Seuraavaks ku löydät samantapaisen topiikin jätä se rauhaan, jos toisten ihmisten auttaminen tällaisissa asioissa ei kiinnosta. Kaikki ei kuitenkaan ajattele samallalailla, onneksi.

Olga [04.03.2005 09:15:49]

#

Ihan vastaisuuden varalle, kannattaa hommata editori, jossa on tuo sulkuparin bongaaminen ominaisuutena. Yksi mainio editori on ilmainen Crimson Editor. Ja vaikka nyt mainitsinkin yhden editorin nimen, niin ei tehdä tästä taas yhtä editorien paremmuusvertailua... :) Niitä on jo putka täynnä.

hunajavohveli [04.03.2005 10:02:38]

#

Hesse kirjoitti:

blaze: kukaan ei pakottanu sua tulee tänne ja yrittää lukee mun virhekoodii. Seuraavaks ku löydät samantapaisen topiikin jätä se rauhaan, jos toisten ihmisten auttaminen tällaisissa asioissa ei kiinnosta. Kaikki ei kuitenkaan ajattele samallalailla, onneksi.

No Blazehan vain antoi neuvoja, että jos seuraavan kerran sattuu tulemaan ongelmia, niin kannattaa lukea virheilmoitukset. Ja kooditageista on myös hyvä huomauttaa, kai olet lukenut keskustelun ohjeet?

esakom [04.03.2005 11:13:07]

#

Blaze on guru (=tietäjäihmisiä). Ainoa tapa tulla sellaiseksi itse on nähdä hieman vaivaa...

Blaze [04.03.2005 12:46:35]

#

Hesse kirjoitti:

blaze: kukaan ei pakottanu sua tulee tänne ja yrittää lukee mun virhekoodii. Seuraavaks ku löydät samantapaisen topiikin jätä se rauhaan, jos toisten ihmisten auttaminen tällaisissa asioissa ei kiinnosta. Kaikki ei kuitenkaan ajattele samallalailla, onneksi.

Koitin valita semmosen sanamuodon, että se nyt ei loukkais ketään, mutta aina ei voi onnistua.

Tarkoitus oli kertoa, miksi tällaiset "tässä koodi, missä vika" -aiheet jäävät yleensä ilman vastausta, eli miksi niitä ei kannata laajemmin harrastaa.

Ja kuten todettu, tämä oli niin helppo, että se oli poikkeus.

Ja mitä esakomin lausahdukseen tulee, niin olen valitettavasti samaa mieltä (tai siis tuosta jälkimmäisestä lauseesta, tuosta ekasta en oo niin varma ^_^;;)


Sivun alkuun

Vastaus

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

Tietoa sivustosta