nezinis Posted June 2, 2013 Report Share Posted June 2, 2013 (edited) Pirms divām nedēļām sāku mācīties php un šobrīd cenšos PAREIZI izveidot forumu izmantojot OOP. Šī foruma izveides mērķis ir apgūt php , mysql un javascript. Dizainu nozagu no themeforest, bet pārējo rakstiju pats skatoties un lasot dažnedažādus tutoriāļus. Vai kāds varētu veltīt 5 minūtes un iziet cauri pašam source kodam un pateikt, ko es daru nepareizi? Ko man vēl ir jāizlasa, jāapgūst pirms es turpinu rakstīt? Source kods: https://github.com/sravia/phpForumBezDomubiedriem Edited June 2, 2013 by nezinis Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 3, 2013 Report Share Posted June 3, 2013 (edited) 1. būtu ļoti labi, ja tev būtu public un protected mapītes, nevis viss vienā. public satur tikai index.php, .htaccess, kas redirekto visu uz index.php, css, javascript un attēlus. protected satur visu kodu. Tad tev nav jāuztraucās, ka jebkurš var ielīst kādā subfolderī un kaut ko nevajadzīgu apskatīties (mazums tev tur ir kāds non-php fails, kurš atvērsies plain-text'ā, piemēram, .sql). 2. mysql_* ir deprecated, izmanto mysqli_ 3. kāpēc tiek izmantotas gan mysql_* funkcijas (config.php), gan PDO (libs/Database.php)? Nu par formatting inconsistency vispār nerunāšu. Tu izmanto PHPStorm, bet nevari pat Ctrl+Shift+F uzspiest? Edited June 3, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
anonīms Posted June 3, 2013 Report Share Posted June 3, 2013 jopcik 2. mysql_* ir deprecated, izmanto mysqli_ This extension is deprecated as of PHP 5.5.0, and is not recommended for writing new code as it will be removed in the future. Instead, either the mysqli or PDO_MySQL extension should be used. Jāvāc no vecajiem kodiem steidzami ārā ;[ Quote Link to comment Share on other sites More sharing options...
nezinis Posted June 3, 2013 Author Report Share Posted June 3, 2013 (edited) 1. būtu ļoti labi, ja tev būtu public un protected mapītes, nevis viss vienā. public satur tikai index.php, .htaccess, kas redirekto visu uz index.php, css, javascript un attēlus. protected satur visu kodu. Tad tev nav jāuztraucās, ka jebkurš var ielīst kādā subfolderī un kaut ko nevajadzīgu apskatīties (mazums tev tur ir kāds non-php fails, kurš atvērsies plain-text'ā, piemēram, .sql). 2. mysql_* ir deprecated, izmanto mysqli_ 3. kāpēc tiek izmantotas gan mysql_* funkcijas (config.php), gan PDO (libs/Database.php)? Nu par formatting inconsistency vispār nerunāšu. Tu izmanto PHPStorm, bet nevari pat Ctrl+Shift+F uzspiest? 1. Varbūt ir kāds piemērs? Kādam jābūt .htaccess failam, lai manā 'protected' mapē nevarētu nekam piekļūt? 2 - 3. Aizmirsu nomainīt uz . Paldies 4. ctrl+alt+f - Paldies. Edited June 3, 2013 by nezinis Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 3, 2013 Report Share Posted June 3, 2013 (edited) Tur nav vajadzīgs piemērs. Ja tev ir public un protected, tad vnk apache/nginx virtualhostam web root liec public, un uz protected vairs neviens netiks, jo normāli webserveri neatļauj, piemēram, šādus URL: "http://some.host/../protected/omg.wtf" Edited June 3, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
404 Posted June 4, 2013 Report Share Posted June 4, 2013 (edited) $logged = $_SESSION['loggedIn']; if ($logged == false) { session_destroy(); header('location: ../login'); exit; } Šis tev beigsies ar Undefined variable erroru un redirekts vairs nestrādās,ja iekš reportinga būs uzslēgtas notices (kas dev variantā būtu pareizāk).Variants: if (empty($logged)) { // Variablis neeksistē vai ir null. Var redirektēt useri. } Edited June 4, 2013 by 404 Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 4, 2013 Report Share Posted June 4, 2013 (edited) Varbūt labāk "empty($_SESSION['loggedIn'])"? Tavā variantā piekļuve $_SESSION variablim tāpat izmetīs undefined index eroru, jo tā notiek pirms empty(). Anyway, es varētu piebilst - nekad netaisi redirektus uz relatīviem URLiem (../login). Edited June 4, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.