Avaleht
uus teema   vasta Tarkvara »  WWW »  Kritiseerige n00bi märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
mine lehele 1, 2  järgmine
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 12.01.2008 17:33:59 Kritiseerige n00bi vasta tsitaadiga

Viimase 24 tunniga olen üritanud endale PHP ja MySQLi põhitõdesi selgeks saada ning valmis olen saanud hästi pisikese testlehe.
PHP kood:
php:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4.  
  5. <head>
  6.         <title>test</title>
  7.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  8.         <link rel="stylesheet" type="text/css" media="all" href="main.css" />
  9. </head>
  10.  
  11. <body>
  12.  
  13. <form action="test.php" method="get" >
  14.         <div id="form">From Year: <input type="text" name="SYR" value= "<?php echo $_GET["SYR"]; ?>" />
  15.         To Year: <input type="text" name="EYR" value= "<?php echo $_GET["EYR"]; ?>" />
  16.         <input type="submit" /></div>
  17. </form>
  18.  
  19. <?php
  20.  
  21.  
  22. //db connect
  23. $con = mysql_connect("localhost:8889","root","root");
  24. if (!$con)
  25.   {
  26.   die('Could not connect: ' . mysql_error());
  27.   }
  28. mysql_select_db("gdb", $con);
  29.  
  30. //päring
  31. $query = "SELECT * FROM `Album` WHERE `Year` between " . $_GET["SYR"] . " AND " . $_GET["EYR"] . " ORDER BY Year DESC";
  32. $result = mysql_query($query) or die('Query failed: ' . mysql_error());
  33.  
  34.  
  35. //sisu
  36.  
  37. echo "<p class=\"code\">" . $query . "</p>";
  38.  
  39. echo "<table class=\"list\">
  40. <tr>
  41. <th>Album</th>
  42. <th>Year</th>
  43. </tr>";
  44. while($row = mysql_fetch_array($result))
  45.   {
  46.   echo "<tr>";
  47.   echo "<td>" . $row['Album'] . "</td>";
  48.   echo "<td>" . $row['Year'] . "</td>";
  49.   echo "</tr>";
  50.   }
  51. echo "</table>";
  52.  
  53. //ühendus kinni
  54.  
  55. ?>
  56.  
  57. </body>
  58. </html>

Mis genereerib sellise html'i:
html:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4.  
  5.         <title>test</title>
  6.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  7.         <link rel="stylesheet" type="text/css" media="all" href="main.css" />
  8. </head>
  9.  
  10.  
  11.  
  12. <form action="test.php" method="get" >
  13. <div id="form">From Year: <input type="text" name="SYR" value= "1995" />
  14. To Year: <input type="text" name="EYR" value= "2007" />
  15. <input type="submit" /></div>
  16.  
  17. </form>
  18.  
  19. <p class="code">SELECT * FROM `Album` WHERE `Year` between 1995 AND 2007 ORDER BY Year DESC</p><table class="list">
  20. <th>Album</th>
  21. <th>Year</th>
  22. </tr><tr><td>Absolute Garbage</td><td>2007</td></tr><tr><td>Bleed Like Me</td><td>2005</td></tr><tr><td>beautifulgarbage</td><td>2001</td></tr><tr><td>Version 2.0</td><td>1998</td></tr><tr><td>Garbage</td><td>1995</td></tr></table>
  23. </body>
  24. </html>

Igasugune kriitiga koodi kvaliteeti on teretulnud icon_razz.gif
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 12.01.2008 17:40:57 vasta tsitaadiga

koodi puhtuse eesmärkidel soovitan igasugu andmebaasidest sikutamised jne tõsta väljundi ette (võimaldab ka tänu sellele teatud võimalusi kasutada (headerisse infot sisestada jne) mida ei saa enam peale esimese info saatmist kliendile teha
lisaks on väljund loetavam, mitte ei ole kõik omavahel segamini

ise märgin koodis blokid ära kasutades suuri kommentaare (a'la ######### Input ja ########### Output)
jäävad hästi silma ja on siis tänu sellele leitavamad
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
hanz
HV kasutaja
hanz

liitunud: 31.03.2005




sõnum 12.01.2008 17:58:30 vasta tsitaadiga

üldiselt tuleks enne andmebaasi piinamist selgeks teha, et keegi sinna mingit jama ei saadaks. Hetkel oleks vast kõige lihtsam lahendus $_GET["SYR"] ja $_GET["EYR"] ette lisada (int), ehk siis " . (int) $_GET["SYR"] . " AND " . (int) $_GET["EYR"] . "

echo ""; asemel soovitaks kasutada echo '';, siis pole probleeme kaldkriipsude lisamisega ning HTML koodis jäävad näha ka reavahetused (lisaks pidi see vist pisut kiirem olema).

mysql_fetch_array asemel kasuta mysql_fetch_assoc, kuna see kasutab vähem mälu (mysql_fetch_array = mysql_fetch_assoc + mysql_fetch_row)

ning mysql_close($con)'i pole tegelikult vaja, kuna üldiselt teeb seda server ise (aga samas, ega ta halba tee)

_________________
Lahedad mängud icon_wink.gif
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 12.01.2008 18:18:07 vasta tsitaadiga

hanz, kiirusevahet ei ole _assoc'il ja _array'l, küll on aga erinevus süsteemis
mysql_fetch_assoc($result) = mysql_fetch_array($result, MYSQL_ASSOC)
küll on aga mõlemad aeglasemad kui mysql_fetch_row()
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
hanz
HV kasutaja
hanz

liitunud: 31.03.2005




sõnum 12.01.2008 19:22:01 vasta tsitaadiga

mikk36 kirjutas:
hanz, kiirusevahet ei ole _assoc'il ja _array'l, küll on aga erinevus süsteemis
mysql_fetch_assoc($result) = mysql_fetch_array($result, MYSQL_ASSOC)
küll on aga mõlemad aeglasemad kui mysql_fetch_row()

ega ma kiirusest ei rääkinudki, ma mälust ikka rohkem (tegelt sealt tuleb ka väike vahe kiiruses). Kui mysql_fetch_assoc() tagastab
    [Album] => 1
    [Year] => 1999

, siis mysql_fetch_array() tagastab
    [0] => 1
    [Album] => 1
    [1] => 1999
    [Year] => 1999

_________________
Lahedad mängud icon_wink.gif
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 12.01.2008 19:24:31 vasta tsitaadiga

Tänud! (int) on ja ka echo '' kuluvad mõlemad ära.

Mis koodi struktuuri puutub, siis üldiselt oleks vist mõttekas kogu leht ühe <?php> sisse panna? Ning kõiksugu headerid ja footerid eraldi include'ga kokku keevitada?

PS: aga mis kujul ikkagi selline pisike asi:

echo "<p class=\"code\">" . $query . "</p>";
olema peaks? Kas pigem:
echo '<p class="code">' . $query . '</p>';
või
echo "<p class=\"code\"> $query </p>";
või hoopis mingit kolmandat moodi?
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 12.01.2008 19:34:59 vasta tsitaadiga

iFlop kirjutas:
Tänud! (int) on ja ka echo '' kuluvad mõlemad ära.

Mis koodi struktuuri puutub, siis üldiselt oleks vist mõttekas kogu leht ühe <?php> sisse panna? Ning kõiksugu headerid ja footerid eraldi include'ga kokku keevitada?

PS: aga mis kujul ikkagi selline pisike asi:

echo "<p class=\"code\">" . $query . "</p>";
olema peaks? Kas pigem:
echo '<p class="code">' . $query . '</p>';
või
echo "<p class=\"code\"> $query </p>";
või hoopis mingit kolmandat moodi?

1. ja 2. on korrektsed, kolmandas näed nii \ kui ka " märke
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
hanz
HV kasutaja
hanz

liitunud: 31.03.2005




sõnum 12.01.2008 19:38:57 vasta tsitaadiga

iFlop kirjutas:
Tänud! (int) on ja ka echo '' kuluvad mõlemad ära.

Mis koodi struktuuri puutub, siis üldiselt oleks vist mõttekas kogu leht ühe <?php> sisse panna? Ning kõiksugu headerid ja footerid eraldi include'ga kokku keevitada?

PS: aga mis kujul ikkagi selline pisike asi:

echo "<p class=\"code\">" . $query . "</p>";
olema peaks? Kas pigem:
echo '<p class="code">' . $query . '</p>';
või
echo "<p class=\"code\"> $query </p>";
või hoopis mingit kolmandat moodi?

eks see üldine struktuur olene sellest, mida teha tahad: kui kasutad päist ja jalust mitmel erineval lehel, siis oleks tõesti parem need eraldi faili paigutada, kui ei, siis võivad ka samas failis olla. Võid kogu HTML osa echo ''; vahele kirjutada või lihtsalt <?php ?>-märke mitu korda kasutada (ma ei ole kindel, kumb on kiirem, aga vaevalt nad väga palju mõjutavad, seetõttu kasuta seda, mis on mugavam)

mina soovitaksin
echo '<p class="code">', $query ,'</p>
<table class="list">
  <tr>
    <th>Album</th>
    <th>Year</th>
  </tr>';

_________________
Lahedad mängud icon_wink.gif
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 12.01.2008 20:07:25 vasta tsitaadiga

hanz kirjutas:

mina soovitaksin
echo '<p class="code">', $query ,'</p>
<table class="list">
  <tr>
    <th>Album</th>
    <th>Year</th>
  </tr>';

Tänud, selline pilt meeldib ka mulle rohkem icon_smile.gif
EDIT: ühe kummalise asja leidsin veel: kui aastate vahemikus valida 0 ja 1 tuleb kaasa:
Year
2001
1998
1995
Ning vahemik 1 ja 1 toob kaasa rea, kus on aaastaks on 2001 icon_confused.gif
Päring ise: SELECT * FROM `Album` WHERE `Year` between 1 AND 1 ORDER BY Year DESC

EDIT2: See tuleb vist sellest, et aastat saab sisestada ka kahekohalise numbri kujul?
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 12.01.2008 20:17:01 vasta tsitaadiga

iFlop, igasugu katsetusi sql vallas on mõttekas teha otse sqlis ehk siis näiteks phpmyadminis, saad selgemad vastused ja ka näed näiteks aja ära et mis väga keerukas on
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
nene
Kreisi kasutaja
nene

liitunud: 20.03.2004




sõnum 12.01.2008 20:27:32 vasta tsitaadiga

hanz kirjutas:
ega ma kiirusest ei rääkinudki, ma mälust ikka rohkem (tegelt sealt tuleb ka väike vahe kiiruses). Kui mysql_fetch_assoc() tagastab
    [Album] => 1
    [Year] => 1999

, siis mysql_fetch_array() tagastab
    [0] => 1
    [Album] => 1
    [1] => 1999
    [Year] => 1999


Nii drastiline see m2lukasutuse erinevus siiski pole kui paistab. mysql_fetch_array teeb küll iga v2lja kohta massiivi kaks indeksit, aga v2ljade sisu jaoks ta siiski topelt m2lu ei eralda. Ehk siis toimub midagi sellist:

$album = "Kohutavalt pikk tekst...";
$row[0] = & $album;
$row["Album"] = & $album;
Kommentaarid: 24 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 12.01.2008 22:03:10 vasta tsitaadiga

Äkki jätaks nüüd mysql_fetch_array vs mysql_fetch_assoc jutu kõrvale ja räägiks hoopis kuidas AJAXit kogu kompoti sisse lisada? icon_wink.gif
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
lehm2
Kreisi kasutaja


liitunud: 19.09.2004




sõnum 12.01.2008 23:27:58 vasta tsitaadiga

iFlop kirjutas:
Äkki jätaks nüüd mysql_fetch_array vs mysql_fetch_assoc jutu kõrvale ja räägiks hoopis kuidas AJAXit kogu kompoti sisse lisada? icon_wink.gif
Uuri Javascripti ja täpsemalt soovitaks prototype frameworki. icon_rolleyes.gif
Kommentaarid: 15 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
nene
Kreisi kasutaja
nene

liitunud: 20.03.2004




sõnum 13.01.2008 16:02:23 vasta tsitaadiga

Aga millele konkreetselt sa AJAX-it rakendada tahaksid? Ega AJAX pole mingi imerohi, mida peale raputades kõik kohe paremaks muutub.

Mul on tunne, et alustuseks peaksid endale selgeks tegema, mis loom see AJAX üleüldse on.
Kommentaarid: 24 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
SGM
HV kasutaja
SGM

liitunud: 04.12.2005



Autoriseeritud ID-kaardiga

sõnum 13.01.2008 16:27:19 vasta tsitaadiga

AJAX on mingi pesuvahend! icon_lol.gif

Kui nali ära jätta, siis siin on seletatud, mis ja milleks ta on: http://en.wikipedia.org/wiki/AJAX
Kommentaarid: 4 loe/lisa Kasutajad arvavad:  :: 1 :: 1 :: 0
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 13.01.2008 16:55:23 vasta tsitaadiga

nene kirjutas:
Aga millele konkreetselt sa AJAX-it rakendada tahaksid? Ega AJAX pole mingi imerohi, mida peale raputades kõik kohe paremaks muutub.

Mul on tunne, et alustuseks peaksid endale selgeks tegema, mis loom see AJAX üleüldse on.

Ei arvagi, et tegu imerohuga on icon_biggrin.gif Lihtsalt tundub, et UId saab sellega palju mugavamaks ja dünaamilisemaks teha.

Põhimõtteliselt tahaks seda niiviisi rakendada:
   ALBUM        YEAR
[+]Garbage      1995
[-]Version 2.0  1998
*---------------------*
|#  TRACK             |
|1  Temptation Waits  |
|2  ITIP              |
|3  When I Grow Up    |
|4  As Heaven Is Wide |
|5  ...               |
*---------------------*
[+]BG           2001
[+]BLM          2005
Selles näites peaks siis nii olema, et kui albumi peale klikitakse laetakse AJAXiga tracklisting.
lehm2 kirjutas:
Uuri Javascripti ja täpsemalt soovitaks prototype frameworki. icon_rolleyes.gif

Endale on mootools nimeline framework päris hea mulje jätnud.


viimati muutis iFlop 13.01.2008 16:56:28, muudetud 1 kord
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
nene
Kreisi kasutaja
nene

liitunud: 20.03.2004




sõnum 13.01.2008 17:20:43 vasta tsitaadiga

SGM kirjutas:
AJAX on mingi pesuvahend!

Ei, ei... Ajax on kuulus kangelane Trooja sõjast.

iFlop kirjutas:
Selles näites peaks siis nii olema, et kui albumi peale klikitakse laetakse AJAXiga tracklisting.

Tundub mõistlik. Ja mis sind takistab selle realiseerimisel?

iFlop kirjutas:
Endale on mootools nimeline framework päris hea mulje jätnud.

Varemalt sai Prototype'i kasutatud, kuid nüüd tundub see jQuery kõrval ääretult kohmakas. Mootools paistab olevat väga igasugustele effektidele suunatud, koodi pool aga paistab Prototype'i sarnane + veel rohkem $-ga algavaid globaalseid muutujaid.
Kommentaarid: 24 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 13.01.2008 17:53:09 vasta tsitaadiga

nene kirjutas:
iFlop kirjutas:
Endale on mootools nimeline framework päris hea mulje jätnud.

Varemalt sai Prototype'i kasutatud, kuid nüüd tundub see jQuery kõrval ääretult kohmakas. Mootools paistab olevat väga igasugustele effektidele suunatud, koodi pool aga paistab Prototype'i sarnane + veel rohkem $-ga algavaid globaalseid muutujaid.

Mootooli eeliseks on IMO suht väike suurus (~18KB) koos AJAXi ja Slider'ga, mida tahaks Samuti veebilehel kasutada.

nene kirjutas:
iFlop kirjutas:
Selles näites peaks siis nii olema, et kui albumi peale klikitakse laetakse AJAXiga tracklisting.

Tundub mõistlik. Ja mis sind takistab selle realiseerimisel?

Esiteks ei tea veel ikkagi mis JS framework sobivaim oleks ning teiseks ei oska JSi, PHPd ja MySQLi vastavalt kokku panna..
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
lehm2
Kreisi kasutaja


liitunud: 19.09.2004




sõnum 13.01.2008 19:51:54 vasta tsitaadiga

Ise vaatasin seda Mootooli ja võib öelda, et suhteliselt väike ja kompaktne, ning lihtne. Eks saa ka MooTool ära proovida. iFlop, kui oska ajaxit kasutada, siis tuleb enne baas asjad selgeks teha, näiteks üks õpetus http://www.tizag.com/ajaxTutorial/.
_________________
Piilu siia, progreja!
Vajad abi Node.JS-ga ?
Võta ühendust !
Kommentaarid: 15 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
nene
Kreisi kasutaja
nene

liitunud: 20.03.2004




sõnum 13.01.2008 21:22:18 vasta tsitaadiga

iFlop kirjutas:
Mootooli eeliseks on IMO suht väike suurus (~18KB) koos AJAXi ja Slider'ga, mida tahaks Samuti veebilehel kasutada.


Mulle tundub see Mootools kuidagi ülemäära modulaarne. Näiteks Core moodule on selline, millega pole suurt midagi peale hakata. Tegelikult tuleks baaspaketti haarata ka Class ja Native. Arvestades, mida mina teha tahaks, siis peaks veel lisama Element, Window, Effects ja Remote. Veider, et seal Mootoolsi allalaadimise lehel pakutakse aga vaikimisi vaid Core.js-i alla laadida, mis tõenäoliselt pole see, mida sa tahaksid.

Ehk siis asjatult keerukaks aetud tundub kogu see värk.

Aga aitab sest fleimist, kindlasti on sellel Mootoolil ka mingeid muid häid omadusi lisaks väiksele failisuurusele.

iFlop kirjutas:
Esiteks ei tea veel ikkagi mis JS framework sobivaim oleks ning teiseks ei oska JSi, PHPd ja MySQLi vastavalt kokku panna..


Ma arvan, et enne kui kõiksuguste frameworkide kallale minna, tasuks õppida JS ja AJAX-it ilma nendeta kasutama. Samuti kuluks sul kindlasti ära ka PHP ja MySQL-i harjutamine ilma igasuguse JavaScriptita. Kuna JavaScript on selline asi, mis võib olla kasutajal välja lülitatud, siis tuleks kõigepealt teha lahendus, mis töötab ilma JavaScriptita ning alles seejärel täiustada seda JavaScriptiga nende kasutajate jaoks, kel see olemas.

Rääkides JavaScriptist, siis see kipub olema keel, mille kohta paljud arvavad, et nad oskavad seda piisavalt hästi, kuid tegelikult ei tea isegi kõige põhilisemaid asju. Enne frameworkide kallale asumist võiksid siiski olla mingisugusedki teadmised sellest kuidas JavaScriptis objekte luua ning mis kasu võiks olla funktsioonist, mis võtab argumendina samuti funktsiooni. Sulunditest (closure) arusaamine oleks samuti hea, algajalt programmeerijalt ehk palju nõuda.
Kommentaarid: 24 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 13.01.2008 22:33:01 vasta tsitaadiga

nene kirjutas:
Ma arvan, et enne kui kõiksuguste frameworkide kallale minna, tasuks õppida JS ja AJAX-it ilma nendeta kasutama. Samuti kuluks sul kindlasti ära ka PHP ja MySQL-i harjutamine ilma igasuguse JavaScriptita. Kuna JavaScript on selline asi, mis võib olla kasutajal välja lülitatud, siis tuleks kõigepealt teha lahendus, mis töötab ilma JavaScriptita ning alles seejärel täiustada seda JavaScriptiga nende kasutajate jaoks, kel see olemas.

Rääkides JavaScriptist, siis see kipub olema keel, mille kohta paljud arvavad, et nad oskavad seda piisavalt hästi, kuid tegelikult ei tea isegi kõige põhilisemaid asju. Enne frameworkide kallale asumist võiksid siiski olla mingisugusedki teadmised sellest kuidas JavaScriptis objekte luua ning mis kasu võiks olla funktsioonist, mis võtab argumendina samuti funktsiooni. Sulunditest (closure) arusaamine oleks samuti hea, algajalt programmeerijalt ehk palju nõuda.

Üldiselt olen Sinuga nõus aga hetkel pole lihtsalt sellist aega, et JS+DOM+XHTML+PHP+MySQli süviti õppima hakata. Ning kui isegi selle aja leiaks, siis võib huvi suht kiiresti kaduda, kui seda kohe reaalselt rakendada ei saa icon_wink.gif
ot:
Selle plaanitava veebisaidi idee tuli juba 1,5a tagasi ning juba siis sai natuke xhtml'i ja JSga mängitud - peamiselt läbi moo.fx. Aga küllaltki ruttu sai selgeks, et plaanitav sait peaks juba oma olemuselt igal juhul database-driven olema ning nii see asi seisis.

Kuna viimasel ajal puutun tööalaselt andmebaasidega päris palju kokku, siis nüüd tekkiski plaan see idee uuesti ellu viia.


Tulles nüüd tagasi AJAXi teemale, siis üldiselt peaks eelnev näide suht lihtsasti teostatav olema läbi vastava JS framework'i?
Spoiler Spoiler Spoiler


PS: Kui kasutajal JS väljas on saan vajaliku infot .txt formaadis pakkuda icon_wink.gif
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
nene
Kreisi kasutaja
nene

liitunud: 20.03.2004




sõnum 13.01.2008 23:06:50 vasta tsitaadiga

Kui sul tõesti väga kiire on, siis soovitakski teha ilma mingite frameworkideta. See asi, mis sa teha tahad on nii lihtne, et sul kuluks frameworki õppimise peale umbes sama palju või rohkemgi aega kui ise XmlHttpRequest objektiga ümber käimise selgeks saamine.

Seega, kui sa tahad kiiret tulemust, siis hakka aga kohemaid pihta. Mozilla lehel on IMHO üks parim AJAX-i õpetus.
Kommentaarid: 24 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
iFlop
Kreisi kasutaja
iFlop

liitunud: 03.05.2003



Autoriseeritud ID-kaardiga

sõnum 14.01.2008 00:09:13 vasta tsitaadiga

nene, Tänud! Kiiret nüüd küll pole icon_biggrin.gif
Samas ei taha, et asi veel oma 1,5a veniks..
Mozilla lehel olev guide on suht lihtne aga seal ei räägita mida sissetuleva andmevooga edasi teha.. Siit leidsin veel ühe huvitava guide. Kui need kaks kokku panna, siis äkki leiutab juba midagi välja.
Kommentaarid: 67 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 66
tagasi üles
vaata kasutaja infot saada privaatsõnum
hanz
HV kasutaja
hanz

liitunud: 31.03.2005




sõnum 14.01.2008 00:58:58 vasta tsitaadiga

Mina alustasin AJAXiga tutvumist sellest http://www.w3schools.com/ajax/default.asp , ehk on pisut abi. Ja kui XML üle viskab, siis proovi ka JSONi - http://www.json.org/ - seda peetakse üldiselt kiiremaks.

nene kirjutas:

Samuti kuluks sul kindlasti ära ka PHP ja MySQL-i harjutamine ilma igasuguse JavaScriptita. Kuna JavaScript on selline asi, mis võib olla kasutajal välja lülitatud, siis tuleks kõigepealt teha lahendus, mis töötab ilma JavaScriptita ning alles seejärel täiustada seda JavaScriptiga nende kasutajate jaoks, kel see olemas.

miks? kui ma ka mõnda aega tagasi hakkasin AJAXiga pisut sügavamalt tutvuma, siis olin ka mures kasutajate pärast, kellel ei ole JavaScript aktiveeritud või kelle browser ei toeta AJAXit, aga tegelikult ei ole selleks mingit vajadust, kuna:
1. milleks peaks üks normaalne Interneti kasutaja JSi kinni keerama? Loomulikult, kui sa külastad igapäevaselt mingisuguseid häkkerite või piraatide lehekülgi ning naudid kahtlasi pornokaid, siis võib JS probleeme tekitada, aga vaevalt keegi enda lehele sellist külastajaskonda tahab.
2. kui kasutad lehel raha teenimiseks Google Adsense'i või mõnd muud sarnast programmi, siis inimesed, kes on JSi kinni keeranud, toovad sulle ainult miinuseid.
3. kui inimese browser tõesti ei toeta XMLHttpRequesti, siis peaks ta minu lehelt lahkumise asemel mind hoopis tänama selle eest, et ma talle meelde tuletan, et 21. sajand on saabunud ning aeg on vana ebaturvaline browser välja vahetada (isegi kiviaegne IE 5.5 saab AJAXiga häda pärast hakkama).
Ma tõesti ei leia põhjust, miks ma peaksin ilma JSita alternatiivi looma icon_rolleyes.gif

_________________
Lahedad mängud icon_wink.gif
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Aq
HV kasutaja

liitunud: 01.01.2003




sõnum 14.01.2008 02:08:45 vasta tsitaadiga

hanz kirjutas:
Ma tõesti ei leia põhjust, miks ma peaksin ilma JSita alternatiivi looma icon_rolleyes.gif

http://www.interneti.info/artiklid/seo/

...sai jälle endale reklaami teha...

Lisan hiljem enda tsitaadi varasemast postitusest

tsitaat:
Võtkem näiteks selline vahva leht nagu http://www.delfi.ee/ ja otsige lehe keskosast üles artiklid "Noortele". Eriti ilusad on sealsete artiklite URLid:
link

See on vist minu 7-8 aasta internetikogemuse kõige kohutavam URL, mida näinud olen. Isegi aastatetagune sessiooni id URLi abil edasi andmine kahvatub sellise asja juures.

Ja lülitage JS oma võrgulehitsejal välja ning mige siis lehele:
http://noortekas.delfi.ee/


Lisaks SEOle ka veel selline märkus, et mitte et ma mingi metsik sotsialist oleks, aga pimedaks võib kah iga inimene jääda... see kah mõtlemiseks JS/AJAX fännidele...
Kommentaarid: 4 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 4
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  WWW »  Kritiseerige n00bi mine lehele 1, 2  järgmine
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.