Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Kysyn vielä vieraskirjasta

Sivun loppuun

juha127 [26.09.2005 18:54:05]

#

Miten saisin estettyä sellaiset viestit jotka eivät sisällä nimeä?
Lisätääs vie voiko php:llä valita vieraskirjassa fontin?

Blaze [26.09.2005 19:15:19]

#

juha127 kirjoitti:

Miten saisin estettyä sellaiset viestit jotka eivät sisällä nimeä?

Tarkista, onko nimikenttä tyhjä, jos on, älä tallenna viestiä.

juha127 kirjoitti:

Lisätääs vie voiko php:llä valita vieraskirjassa fontin?

PHP:llä ei ole fontin kanssa mitään tekemistä. Aseta CSS-tyylisivulla haluamasi fontti haluamillesi elementeille.

Matso [26.09.2005 19:36:53]

#

if(empty($nimi) {header("location: vieraskirja.php")}

juha127 [26.09.2005 22:00:17]

#

Mutta tuo fontti, onnistuisiko jollain kielellä(huom tulee nettisivulle) se että valitaan listalta fontin ja lähetetty viesti näkyy määrätyllä fontilla.

lapm [26.09.2005 23:03:55]

#

juha127 kirjoitti:

Mutta tuo fontti, onnistuisiko jollain kielellä(huom tulee nettisivulle) se että valitaan listalta fontin ja lähetetty viesti näkyy määrätyllä fontilla.

No onnistuu toki. Eri asia löytyykö kyseistä fonttia vieraskirjaasi selaavan surffailijan koneelta.

juha127 [27.09.2005 17:04:28]

#

No se nyt on yks ja sama täs tapaukses...

ajv [27.09.2005 17:50:49]

#

Tallennat sen fontin sinne tietokantaasi viestin viereen ja sitten tulostetaaessa tulostat:

<?php
// nämä tulee sieltä kannasta
$viesti = "Moi, olen Aapo vee!"
$fontti = "Verdana"

echo '<p style="font-family: '.$fontti.',serif;">'.$viesti.'</p>';
?>

That's it! Helppoa kuin heinän teko :)

Edit: Huppista, meinasin aluks laittaa tohon viestiin jonku tyhmän senssi-ilmotuksen ja sit se jäi vahingossa puolikkaana siihen :) * siivottu *

juha127 [27.09.2005 18:47:03]

#

Hmm...
En tie kummas o vika mus vai tos sun koodi pätkäs???
ku tulee vaa
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in C:\Apache\Apache2\htdocs\nayta.php on line 49

Blaze [27.09.2005 18:54:13]

#

Tuosta puuttuu kaks puolipistettä. Jääköön harjoitustehtäväksi etsiä niille paikat.

juha127 [27.09.2005 19:08:36]

#

Niin ne puolipisteet puuttuu ainaski noista muuttujist.(esimerkissä)
Mut toi echo lauseke, siin o vikaa
Vai puuttuuks siitäki puolipisteitä?

Blaze [27.09.2005 19:59:44]

#

Echo-lauseke on kyllä ihan oikein.

juha127 [27.09.2005 20:48:07]

#

Mutta miks sit vaa tulee
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in C:\Apache\Apache2\htdocs\nayta.php on line 49
toi rivin 49 koodi on

echo "<center> '<p style="font-family: '.$fontti.',serif;">'.$viesti.'</p>';Viesti:<br>$viesti.;<hr></a></center>";

ajv [27.09.2005 20:57:29]

#

En anna suoraa oikeata koodia, vaan käsken opettelemaan mikä ero on lainausmerkillä " ja hipsulla ' sekä miten näiden avulla voidaan tulostaa tekstiä. Näiden lisäksi kannattaa hankkia editori, jossa syntaksiväritys. Ongelma aukeaa, kun käyt rivin merkki merkiltä läpi.

Alkuun pääset Laaksosen oppaalla:
https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=phpj

Metabolix [27.09.2005 21:10:02]

#

Joku muuten mainitsi, että on nopeampaa echottaa nuo kaikki peräkkäin kuin käyttää pistettä välissä (vinkki vinkki)... Anteeksi offtopic.

juha127 [27.09.2005 21:42:53]

#

En oikein ymmär mikä siin täsmällee meni vikaa...
Mut jotenkin olin laittanu nuo tagit tai heittomerkit väärii paikkoihi...
mut se siit sain sen toimii niinku halusin

squid [27.09.2005 22:03:05]

#

PHPssä ohjelmointi"lause" loppuu tuohon ';' merkkiin.

Eli käytännössä tämä toimii kanssa:

<?php $poo = poo;echo $poo;?>

Edit.. Lopetus tagi kuntoon :>

juha127 [28.09.2005 18:03:53]

#

HMM... mietin vielä sitä mitenkä sais tehtyy sen, että viestiä ei voi lähettää jos nimeä ei ole???

Olisko pitäny aloittaa uusi aihe?

squid [28.09.2005 18:13:17]

#

Teet semmosen ehtolauseen ennen viestin lähetystä, joka tarkistaa sen, ja jos ei ole, niin sitten laitetaan jonnekkin muualle. Eli tämmönen kai toimii:

<?php
/* tässä on jo muuttujat laitettu, ja formin sisällöt omissa lokeroissa */
if (empty($nimi)) {
  header("Location: virhe.php");
}
/* tässä sitten laitat krijoitat tiedot tiedostoon, sekä muut tarpeelliset toimet. */
?>

En muuten ole aivan varma toimiiko noin, mutta sitten toimii ainakin, jos laittaa loppu osan else:en.

juha127 [28.09.2005 18:30:53]

#

En saanut tuolla sun esimarkilläs toimii sitä suoraa, mut yks ongelma on tulee Warning: Cannot modify header information - headers already sent by (output started at C:\Apache\Apache2\htdocs\viestikasittely.php:4) in C:\Apache\Apache2\htdocs\viestikasittely.php on line 35
Miten saisin ton pois. Ku toi if lauseke estää sen toimisen.
Eli koodin toiminta täytys saada katkeamaan tuohon if lausees.

Blaze [28.09.2005 18:53:59]

#

http://pp.kpnet.fi/blaze/codefaq/#headerssent

Meitsi [28.09.2005 19:02:23]

#

ajv kirjoitti:

Tallennat sen fontin sinne tietokantaasi viestin viereen ja sitten tulostetaaessa tulostat:

<?php
// nämä tulee sieltä kannasta
$viesti = "Moi, olen Aapo vee!"
$fontti = "Verdana"

echo '<p style="font-family: '.$fontti.',serif;">'.$viesti.'</p>';
?>

That's it! Helppoa kuin heinän teko :)

Edit: Huppista, meinasin aluks laittaa tohon viestiin jonku tyhmän senssi-ilmotuksen ja sit se jäi vahingossa puolikkaana siihen :) * siivottu *

...Ja sanomattakin on selvää että tuo $viesti/$fontti on mennyt peeloilusiivouksen läpi ennen tuohon lisäämistä.

Matso [28.09.2005 19:03:09]

#

juha127 kirjoitti:

En saanut tuolla sun esimarkilläs toimii sitä suoraa, mut yks ongelma on tulee Warning: Cannot modify header information - headers already sent by (output started at C:\Apache\Apache2\htdocs\viestikasittely.php:4) in C:\Apache\Apache2\htdocs\viestikasittely.php on line 35
Miten saisin ton pois. Ku toi if lauseke estää sen toimisen.
Eli koodin toiminta täytys saada katkeamaan tuohon if lausees.

headerit täytyy joko määrittää alussa, tai niitä ennen ei saa tulostaa mitään, huomaa, edes <?php tagia ennen ei saa olla tyhjä rivejä, jos kuitenkin poikkeat tästä säännöstä, laita alkuun ob_start(); ja loppuun ob_end_flush();

juha127 [28.09.2005 21:11:37]

#

Miten muute sais phpl kirosana eston kuin laittaa
$viesti = str_replace("kirosana", "*****", $viesti);

Metabolix [28.09.2005 21:59:58]

#

No ei oikein muuten. preg_replace on sitten toinen, mutta sekin on tavallaan sama asia.

juha127 [28.09.2005 22:03:50]

#

noh jos ei muut ole ni tulee aika lail kirjotus hommii ja täytyy keksii kaikki muodot mis kirosanat kirjotetaa.
Mut toivottavast äiskä ei kato koodi ku oon vast 14v.


Sivun alkuun

Vastaus

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

Tietoa sivustosta