Dobrý den.
Cíl: Chci aby se po kliknutí (přihlášeného uživatele) na tlačítko "pridej x" přičetla 1 k x a odečetla 1 od y.A aby se mu to při další návštěvě znovu objevilo tak jak si to navolil minule.
Problém: Při kliknutí na tlačítko se sice změní hodnota x a y ale jen vizuálně (Ne v databázi).Takže když uživatel odejde a vrátí se, nebo nechá stránku aktualizovat tak se mu to vrátí zpátky tak jak to bylo.A v databázi nedojde ke změně.
Zde jsou mé kódy:
config.php:
<?php
error_reporting(E_ALL);
define('DBHOST', 'server); # databazovy server
define('DBNAME', 'databaze'); # jmeno databaze
define('DBUSER', 'me jmeno(treba quest)'); # uzivatelske jmeno
define('DBPASS', 'heslo.jako treba 1234:-))'); # heslo k databazi
@mysql_connect(DBHOST, DBUSER, DBPASS) or die (mysql_error());
@mysql_select_db(DBNAME) or die (mysql_error());
mysql_query("SET NAMES utf8_czech_ci");
@session_start();
?>
user.php:
<?php
require_once dirname(__FILE__)."/config.php";
$dotaz = mysql_query("SELECT x, y FROM uzivatele WHERE id='".$id."'") or die(mysql_error());
if ($odpoved = mysql_fetch_array($dotaz))
{
$x = $odpoved['x'];
$y = $odpoved['y'];
}
?>
<script type="text/javascript">
var x=<?php echo $x ?>;
var y=<?php echo $y ?>;
var id=<?php echo $_SESSION['id'] ?>;
function nazev()
{
if (y>= 1)
{
x +=1;
y -=1;
}
window.document.getElementById("vysledek").innerHTML=x;
var temp = new Image();
temp.src = "ulozDoDatabaze.php?x=" + x + "&y=" + y;
}
</script>
<div id="vysledek">10
</div>
<br>
<input type="button" onClick="nazev();" value="pridej x">
ulozdodatabaze.php:
<?php
require_once dirname(__FILE__)."/config.php";
$dotaz = mysql_query("UPDATE uzivatele SET x='".$_GET["x"]."', y='".$_GET["y"]."' WHERE id='".$_SESSION['id']."'");
?>
Proměnné z databáze se mi načtou protože když se přihlásím z účtu a. tak mám základní hodnoty 10 a 10 ale pokud se přihlásím z účtu b. na kterém jsem změnil x na 11 a y na 9(změnil jsem to v administraci databáze ne přes tuhle funkci) tak se načte 11 a 9.Takže načítání z databáze funguje.
Takže:id,x,y se načtou správně ale po přičtení hodnoty se do databáze neuloží a při dalším načtení stránky se zobrazí zase jako předtím.
Už nevím v čem to je a budu rád za každou radu.