Open pzoechner opened 4 years ago
Wir haben das Problem ziemlich sicher identifiziert.
Die Beschreibung von setcookie()
auf php.net:
setcookie() defines a cookie to be sent along with the rest of the HTTP headers. Like other headers, cookies must be sent before any output from your script (this is a protocol restriction). This requires that you place calls to this function prior to any output, including and
tags as well as any whitespace.
In der Werwolf.php
kommt beinahe immer ein echo()
vor einem setcookie()
vor. Das dürfte nicht passieren. Dass es trotzdem funktioniert, liegt wohl an der Servereinstellung output_buffering. Der Defaultwert der Option scheint 0
zu sein. Mit dem Wert 4096
ist das "Problem" behoben.
Danke auch an @martinzimmermann!
Hallo,
ich bin leider bis jetzt noch nicht dazugekommen, dass ich es mir anschaue, daher auch noch keine Antwort zuvor.
Um aber ehrlich zu sein, war mir dieser Umstand mit dem setcookie() nicht bewusst. Ich habe es auch schon auf verschiedenen Serverkonfigurationen laufen gehabt, und es gab nie ein Problem, daher hatte ich auch keine Ahnung, woher der Fehler kommen könnte. Da hab ich bis jetzt wohl immer Glück gehabt!
Danke auf jeden Fall für den Hinweis! Das mit dem output_buffering ist ja wohl eher eine Notlösung. Also es sollte eigentlich geändert werden, dass setcookie() wie empfohlen vor einem Output des Skripts kommt.
Hi,
we successfully set up the game but no cookies are persisted after page reload. Would you mind sharing your PHP server settings and
.htaccess
?PS: Thank you for sharing the game!