Note that there are some explanatory texts on larger screens.

plurals
  1. POWhich page is which acording to model-view-controller?
    primarykey
    data
    text
    <p>EDIT: My below example is more of a post-redirect-get than a MVC</p> <p>I am reading a lot about correct structure for my page, MVC pattern, frameworks etc. and yet I am confused which parts of my page best fit under the description of model, of view and which of controller. Now before you downvote I did a lot of research already to separate my logic and make my simple page, I just need a confirmation that I am doing it right, what to fix/separate, which page is what according to MVC and where would I link or include index.php? I am not asking much I hope just for a quick glance at my code. </p> <p>I will provide 3 different pages I built in order they are initialized as an example:</p> <p>html form, also displays processed data user starts here:</p> <pre><code>&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt; &lt;title&gt;Vaški gozd&lt;/title&gt; &lt;link href="../html/css/base.css" rel="stylesheet" type="text/css" /&gt; &lt;/head&gt; &lt;body&gt; &lt;?php if(!$_POST and $poskodbe != '0') { ?&gt; &lt;p&gt;Presenetil&lt;?php text($spol); ?&gt; te je &lt;?php text($monster); ?&gt; !&lt;/p&gt; &lt;form action='../php/gozd.php' method='post'&gt; &lt;input type='submit' name='action' value='Napadi' /&gt; ali &lt;input type='submit' name='action' value='Pobegni' /&gt; &lt;input type='hidden' name='monster' value= '&lt;?php text($monster); ?&gt;' /&gt; &lt;/form&gt; &lt;?php } else if ($poskodbe == '0'){text($moznost); ?&gt; &lt;p&gt;&lt;a href='../php/start.php'&gt;Odpravi se proti domu&lt;/a&gt;&lt;/p&gt; &lt;?php } else { ?&gt; &lt;ul&gt;&lt;?php foreach ($combat as $turns =&gt; $i) { ?&gt; &lt;li&gt; &lt;p&gt;&lt;strong&gt;&lt;?php text($i['napadalec']); ?&gt;&lt;/strong&gt; &lt;?php text(' napade '); ?&gt;&lt;strong&gt;&lt;?php text($i['branilec']); ?&gt;&lt;/strong&gt; &lt;?php text(' in mu napravi poškodbe za ') ?&gt;&lt;strong&gt;&lt;?php text($i['damage']); ?&gt;&lt;/strong&gt; &lt;?php text(' točk zdravja '); } ?&gt; &lt;/p&gt;&lt;/li&gt; &lt;/ul&gt; &lt;?php if(isset ($zmaga)) { ?&gt; &lt;p&gt;Pregnal si &lt;strong&gt;&lt;?php text($monster_ime); ?&gt;&lt;/strong&gt;! V naglici je za seboj pustil &lt;strong&gt;&lt;?php text($cekini); ?&gt;&lt;/strong&gt; cekinov, ki jih seveda pobereš.&lt;/p&gt; &lt;p&gt;&lt;a href='../php/gozd.php'&gt;Raziskuj dalje&lt;/a&gt;&lt;/p&gt; &lt;?php } ?&gt; &lt;?php if(isset ($zguba)) { ?&gt; &lt;p&gt;Podlegel si poškodbam &lt;strong&gt;&lt;?php text($monster_ime); ?&gt;&lt;/strong&gt;.&lt;/p&gt; &lt;?php } ?&gt; &lt;p&gt;&lt;a href='../php/start.php'&gt;Odpravi se proti domu&lt;/a&gt;&lt;/p&gt; &lt;?php } ?&gt; &lt;/body&gt; &lt;/html&gt; </code></pre> <p>php that processes data and returns results:</p> <pre><code>&lt;?php session_start(); include 'config.php'; include 'stats.php'; $igralec_ime = $_SESSION['username']; $_SESSION['poskodbe'] = ($poskodbe = prikazi_stat('curhp', $igralec_ime)); if ($poskodbe == '0') {$_SESSION['moznost'] = ($moznost = 'Tvoje zdravje je resno ogroženo, vrni se domov!');} else { if ($_POST) { if($_POST['action'] == 'Napadi') { $igralec = array ( 'ime' =&gt; $igralec_ime, 'napad' =&gt; prikazi_stat('ofe',$igralec_ime), 'obramba' =&gt; prikazi_stat('def',$igralec_ime), 'curhp' =&gt; prikazi_stat('curhp',$igralec_ime) ); $monster_ime = $_POST['monster']; $monster = array ( 'ime' =&gt; $monster_ime, 'napad' =&gt; prikazi_monster_stat('ofe',$monster_ime), 'obramba' =&gt; prikazi_monster_stat('def',$monster_ime), 'curhp' =&gt; prikazi_monster_stat('maxhp',$monster_ime) ); $combat = array(); $turns = 0; while($igralec['curhp'] &gt; 0 &amp;&amp; $monster['curhp'] &gt; 0) { if($turns % 2 != 0) { $napadalec = &amp;$monster; $branilec = &amp;$igralec; } else { $napadalec = &amp;$igralec; $branilec = &amp;$monster; } $damage = 0; if($napadalec['napad'] &gt; $branilec['obramba']) { $damage = $napadalec['napad'] - $branilec['obramba']; } $branilec['curhp'] -= $damage; $combat[$turns] = array( 'napadalec' =&gt; $napadalec['ime'], 'branilec' =&gt; $branilec['ime'], 'damage' =&gt; $damage ); $turns++; } update_stat('curhp',$igralec_ime,$igralec['curhp']); if($igralec['curhp'] &gt; 0) { update_stat('cek',$igralec_ime,prikazi_stat('cek',$igralec_ime)+ prikazi_monster_stat('cek',$monster_ime)); $zmaga = 1; $cekini = prikazi_monster_stat('cek',$monster_ime); } else { if ($igralec['curhp'] &lt;0) {update_stat('curhp', $igralec_ime, '0'); } $zguba = 1; } } else { header('Location:../php/start.php'); exit; } } else { $query = sprintf("SELECT ime, spol FROM monsters ORDER BY RAND() LIMIT 1"); $result = mysql_query($query); list($monster, $spol) = mysql_fetch_row($result); } } $_SESSION['moznost'] = $moznost; $_SESSION['monster'] = $monster; $_SESSION['spol'] = $spol; $_SESSION['poskodbe'] = $poskodbe; $_SESSION['combat'] = $combat; $_SESSION['turns'] = $turns; $_SESSION['zmaga'] = $zmaga; $_SESSION['zguba'] = $zguba; $_SESSION['monster_ime'] = $monster_ime; $_SESSION['cekini'] = $cekini; $_SESSION['post'] = $_POST; header('Location:../php/gozd_kontroler.php',true,303); exit; ?&gt; </code></pre> <p>php page that has included html page from earlier and to which my data manipulating php script redirects to display results:</p> <pre><code>&lt;?php session_start(); include 'razno.php'; $monster = $_SESSION['monster']; $spol = $_SESSION['spol']; $poskodbe = $_SESSION['poskodbe']; $moznost = $_SESSION['moznost']; $combat = $_SESSION['combat']; $turns = $_SESSION['turns']; $zmaga = $_SESSION['zmaga']; $zguba = $_SESSION['zguba']; $monster_ime = $_SESSION['monster_ime']; $cekini = $_SESSION['cekini']; $_POST = $_SESSION['post']; include '../html/gozd.html'; ?&gt; </code></pre> <hr> <p><strong>Which page is which acording to model-view-controller? Am I doing it right at all? Where would I link or include index.php?</strong></p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload