Jump to content
php.lv forumi

Vai pareizi daru? Nepieciešami ieteikumi


nezinis

Recommended Posts

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 by nezinis
Link to comment
Share on other sites

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 by jurchiks
Link to comment
Share on other sites

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ā ;[

Link to comment
Share on other sites

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 by nezinis
Link to comment
Share on other sites

$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 by 404
Link to comment
Share on other sites

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 by jurchiks
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...