title: Haxe / PHP server changing output without compiling file
body: <p>I'm making a web app in Haxe and compiling it to PHP. I test the PHP code on my local server (<code>php -S</code>). </p>
  
  <p>Here's the code:</p>
  
  <pre><code>    //...
      switch(page) {
          //...
          case "user":
              //if logged in, display profile; if not, redirect to login
  
              var loggedIn = false;
  
              //check if user is logged in
              if (Session.exists("username") &amp;&amp; Session.exists("password")) {
                  var username:String = Session.get("username");
                  var password:String = Session.get("password");
  
                  //check the password
                  var conn = Mysql.connect({user: "..." pass: "...", host: "127.0.0.1", database: "..."});
                  var dbpass = conn.request("SELECT password FROM users WHERE username = \'" + username + "\';").results().first().password;
  
                  if (password == dbpass)
                      loggedIn = true;
              }
  
              if (!loggedIn) {
                  returnPage += File.getContent("../html/login.html");
              } else {
                  //TODO add profile page
              }
      }
  </code></pre>
  
  <p>The server gives this error (no error when compiling): </p>
  
  <pre><code>uncaught exception: Unable to call &lt;exists&gt;
  
  in file: /.../lib/haxe/ds/StringMap.class.php line 31
  #0 /.../lib/Open.class.php(9): haxe_ds_StringMap-&gt;__call('exists', Array)
  #1 /.../open/index.php(11): Open::main()
  #2 {main}
  </code></pre>
  
  <p>And this is where the really weird part begins: When I change something in the code (it doesn't have to affect the app, even a comment would do), <strong>don't build it</strong> and reload the page, it suddenly works. But when i build the code, it gives the error again.</p>
  
  <p>Is it some bug in the server or do I make a mistake somewhere?</p>
  
  <hr>
  
  <h3>EDIT</h3>
  
  <p>I moved the testing server to Apache and the problem still persists.</p>