Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Kyselylomakkeet PHP:llä

jarspa [01.04.2005 06:43:43]

#

Miten kannattaa tehdä asiakaskyselylomake jossa on paljon radio button objekteja. Tiedoista pitäisi saada sitten tehtyä yhteenvetoja sun muuta. Ajattelin tekstitiedostoon tietojen tallentamista mutta onko muita ideoita? Pystyiskö tämän toteuttaa ilman PHP:tä.

Heikki [01.04.2005 06:53:47]

#

Kunnon tietokanta helpottaa kyllä varsinkin jo tuloksia on paljon, eli kannattaa käyttää esim. MySQL:ää jos mahdollista. Ei kuitenkaan ole mitenkään mahdotonta toteuttaa tekstitiedostoon tallentamalla, joutuu vaan koodaamaan hieman enemmän.

Jos PHP:tä et halua käyttää niin onhan sitä ASP ja muita palvelimella suoritettavia skriptikieliä, mutta muuntyyppisillä kielillä toteuttamista en suosittele.

jarspa [01.04.2005 08:14:02]

#

Tässä on pieni malli säätö!
Miten rivinvaihto kannattaa toteuttaa tekstitiedostoon et se näyttäis esimerkiksi seuraavalta:

Mikä Eläin | Koira
Mikä Hedelmä | Banaani

<?php
if(isset($_POST['laheta']))
{
$tiedosto = fopen("vastaukset.txt", "a");

$lemmikit=$_POST['elaimet'];
$hedelmat=$_POST['hedelmat'];

$kysely1="Mikä Eläin | $lemmikit";
$kysely2="Mikä Hedelmä | $hedelmat";

fwrite($tiedosto, $kysely1);
fwrite($tiedosto, $kysely2);

fclose($tiedosto);

print "<b>Kiitos vastauksesta!<b>";
}
else
{
print "Ei mennyt putkeen";
}
?>

Heikki [01.04.2005 10:21:04]

#

Kannattaa tallentaa tekstitiedostoon vain henkilön vastaukset. Esimerkiksi jos kyselyn kysymykset ovat Mikä eläin? ja Mikä hedelmä? niin tekstitiedoston rakenne voisi olla tällainen:

kärpänen|||banaani|||
apina|||mandradiini|||

Tämä helpottaa tulosten käsittelyä skriptillä, skripti voi tämän jälkeen helposti laskea vastauste määrän/suhteen tms, mitä nyt haluatkin. Esimerkkiskripti laskee moniko vastasi "kärpänen":

<?php
$erotin="|||";
$karpasia=0; //kärpästen lukumäärä

$rivit=file("vastaukset.txt");

//käydään taulukko läpi
for ($i=0; $i<count($rivit); $i++) {
  $rivi=explode($rivit[$i], $erotin);
  if ($rivi[0]=="kärpänen")
    $karpasia++;
}

echo "Kyselyyn vastasi kaikkiaan " . count($rivit) . " henkilöä, joista " . $karpasia . " vastasi kärpänen";
?>

Tuo koodi on päästä heitetty, mutta kertoo tavan. Kirjoittaminen hoidetaan sitten kirjoittamalla tiedoston perään vastaus1|||vastaus2|||.

Vastaus

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

Tietoa sivustosta