Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Muistio

Sivun loppuun

Paratiisin poika [13.04.2012 11:32:41]

#

tein php softan "muistio". Se käyttää sql tietokantaa ja mielestäni toimii hyvin. kertokaa mielipiteenne.

http://vjgo.viuhka.fi/muistio.zip

dartvaneri [13.04.2012 11:43:13]

#

Etkös millään vois tehdä demoa? Ei nimittäin hirveesti huvittais ruveta tekeen ittelle tietokantaan tauluja yms.

Paratiisin poika [13.04.2012 11:50:26]

#

tuolla paketissa on sql tiedosto, joka pitää vain ladata tietokantaan, vai onko siinä joku vikana?

Edit: Haluaisin huomauttaa että muistio on tarkoitettu yksityiseen käyttöön, koska sen käyttötarkoitus on tallettaa tekstiä joka voi olla myös henkilökohtaista. kuitenkin siinä on fb jako mahdollisuus.

neau33 [13.04.2012 12:22:30]

#

Heippa taas!

Paratiisin poika kirjoitti:

tein php softan ... mielestäni toimii hyvin ...

mielipiteeni on, että jutska on aika syvältä...

Paratiisin poika [13.04.2012 13:09:32]

#

kerro hieman tarkemmin?

neau33 [13.04.2012 16:21:19]

#

MOI Paratiisin poika!

Imppasin .zip pakettisi...tutkin...testasin ja muodostin sitten mielipiteeni. Viritelmäsi sisälsi kuitenkin niin paljon turhaa sälää, etten edes viitsi alkaa erittelemään.

makumaku [13.04.2012 17:22:18]

#

Hyvänä puolena tuossa on että yhdessä filessä ei ole liian pajon tavaraa.
Esim file n.php

<?php
$n = "\n";
?>

:)

The Alchemist [13.04.2012 18:22:20]

#

No kerrotaan nyt jotain feedbackia, kun yritys on kerta kova.

- Pukkaa syntax erroria pdo.php:n rivillä 4.
- Heittää noticea heti etusivulla (undefined index 'sisalla').
- HTML:n taso on ihan hirveän huono.
- Includet on sijoiteltu sekavasti (ripoteltu eri tiedostoihin ja jopa if-else-haaroihin)
- Ei ääkkös-entiteettejä ("&auml;") koodiin vaan korjaa merkistöongelmat.
- Muistion muokkaaminen ei toimi heti sen luomisen jälkeen -> sisältö vain häviää bittiavaruuteen.

On tuossa jotain aidosti hyvääkin:
+ PDO:n käyttö
+ Noticeja ei tullut vastaan kuin etusivulla tuo yksi.
+ Koodia on siistitty jakamalla sitä eri tiedostoihin.
...en tosin ole ihan varma, että onko jaottelu erityisen hyvä, enkä jaksa nyt ajatella niin syvällisesti.

Teuro [14.04.2012 08:05:22]

#

Mitä tapahtuu logiikalle, jos välistä poistetaan yksi tai usemapia muistioita? Fiksumpi logiikka olisi hakea aina viimeisin lisätty tietue, joka annetaan parametriksi. Tosin tuollainen linkki tuloksiin (result.php) on ihan hyvä.

Lisäksi olisi hyvä aina varmistaa, että muuttujat ovat olemassa. Muutoin tulee turhia notice-ilmoituksia.

Kyselyissä haet suotta kaikki rivit, jos tarvitset vain yhtä tai kahta. Koodin lukijalle ja edelleen kehittäjälle olisi parempi, jos luettelet sarakkeet joita tarvitaan.

Värien kanssa kannattaa olla tarkkana, ettei käyttäjän omat väriasetukset aiheuta ongelmia.

Paratiisin poika [15.04.2012 13:29:00]

#

makumaku kirjoitti:

Hyvänä puolena tuossa on että yhdessä filessä ei ole liian pajon tavaraa.
Esim file n.php

<?php
$n = "\n";
?>

:)

Minulla on php muokkain tuolla sivustolla ja se poistaa \ merkit joten tein kerran n.php tiedoston jollaki ulkoisella ohjelmalla ja sain sillä php:ssä toimimaan rivivaihdot.

The Alchemist kirjoitti:

- Pukkaa syntax erroria pdo.php:n rivillä 4.
- Heittää noticea heti etusivulla (undefined index 'sisalla').
- HTML:n taso on ihan hirveän huono.
- Includet on sijoiteltu sekavasti (ripoteltu eri tiedostoihin ja jopa if-else-haaroihin)
- Ei ääkkös-entiteettejä ("&auml;") koodiin vaan korjaa merkistöongelmat.
- Muistion muokkaaminen ei toimi heti sen luomisen jälkeen -> sisältö vain häviää bittiavaruuteen.

- Ei se mulla heitä mitää virheitä
- ennen vai jälkeen sisäänkirjautumisen?
- sivuseikka, demoversio
- en osaa tehä paremmin :D
- teen tavasta koodeilla ä, ö ja å yms merkit
- Pitää tarkistaa

Tuo oli ensin muuten tehty sillai et se luo aina uuden tiedoston mutta nyt ihan vasta muutin sen tietokanta pohjaiseksi sovellukseksi ettei vie tilaa. Tiedostopohjainen on mulla käytössä ainakin toistaiseksi. Se toimii aiakin kunnollla.

The Alchemist [15.04.2012 13:34:37]

#

Levylle ei voi tallentaa tietoa ilman, että se veisi tilaa. (Pilkunviilaajat älköön vaivautuko). Kun kyse on muutamista ihmisen kirjoittamista kilotavuista, niin sillä ei ole yhtään mitään väliä muutenkaan.

Paratiisin poika [16.04.2012 09:31:46]

#

lisays.php tiedostoon muutos:

<?php
include("login.php");
$filename = $_POST["filename"];
$content = $_POST["text"];
$kysely = $yhteys->prepare("INSERT INTO muistio (name, content) VALUES (?, ?)");
$kysely->execute(array($filename, $content));
$id = $yhteys->lastInsertId();
    header("Location: result.php?id={$id}");
?>

Muokkaus tiedostoon login.php

<?php
if(!$_SESSION["sisalla"]) $_SESSION["sisalla"] = "ei";
    include("settings.php");
    session_start();
      if(isset($_POST["salasana"])) {
            if($_POST["salasana"] == $pass) {
              $_SESSION["sisalla"] = "kylla";
            }else {
              echo "<span style='color:red;'>V&auml;&auml;r&auml; salasana!</span><br>";
            }
      }
  $sisalla = false;
      if($_SESSION["sisalla"] == "kylla") $sisalla = true;
      if(!$sisalla) {
?>
<form action="./" method="post">
  Salasana: <input type="password" name="salasana"><br>
  <button type="submit">Kirjaudu</button>
</form>
<?php
    exit;
      }else {
    include("pdo.php");

          echo "<span style='float:right;'><b><a href='logout.php'>Kirjaudu ulos</a></b></span>";
      }
?>

Tämä poistaa mahdollisen virheilmoituksen määrittelemättömästä sessionista.

The Alchemist: Kyllä se toimii se muokkaus heti lisäämisen jälkeen.

dartvaneri [16.04.2012 10:25:20]

#

Missä Ruotsinkieliset muuttujan nimet? Kun jo Suomi ja Englanti löytyy.

Paratiisin poika [17.04.2012 10:18:52]

#

Päivitin zip paketin. Muutokset edelliseen pakettiin:

Ohjelmisto on testattu ja se toimii. Hakuosiossa on tietoturva-aukko: hakukysely suoritetaan suoraan kyselyssä joten sillä voi tuhota tietokannan. En saanut sitä toimimaan suojatusti.

Sovelluksen tiedostot: http://vjgo.viuhka.fi/Muistio.zip (Viimeksi päivitetty 17.4.2012 14:00)

-tossu- [17.04.2012 23:46:08]

#

Paratiisin poika kirjoitti:

Hakuosiossa on tietoturva-aukko: hakukysely suoritetaan suoraan kyselyssä joten sillä voi tuhota tietokannan. En saanut sitä toimimaan suojatusti.

Ongelmia taisivat aiheuttaa LIKE ja %-merkit. Tee näin:

$query = $connect->prepare("SELECT * FROM muistio WHERE name LIKE ?");
$query->execute(array("%$keyword%"));

Haku toimii edelleen odottamattomalla tavalla, mikäli hakulausekkeessa on % tai _. Vaikka siitä ei koidu suurta ongelmaa, se kannattaa harjoituksen takia selvittää.

Paratiisin poika kirjoitti:

Minulla on php muokkain tuolla sivustolla ja se poistaa \ merkit joten tein kerran n.php tiedoston jollaki ulkoisella ohjelmalla ja sain sillä php:ssä toimimaan rivivaihdot.

Hommaa itsellesi jostain parempi editori, äläkä tee tuollaisia virityksiä. Vähän isommissa projekteissa niistä ei ota kukaan selvää.

En käynyt koko pakettia läpi, mutta siinä on selvästi parannettavaa. Esimerkiksi files.php hakee ensin kaikki muistiot ja sen jälkeen muistioiden määrän.

Paratiisin poika [20.04.2012 08:24:39]

#

Nyt on taas paranneltu softaa.

http://vjgo.viuhka.fi/Muistio.zip (Päivitettty 21-4-2012 13:47)


Sivun alkuun

Vastaus

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

Tietoa sivustosta