Rinox Skrevet 1. mai 2007 Skrevet 1. mai 2007 Hei, jeg har litt problemer med dette scriptet mitt: Klikk for å se/fjerne innholdet nedenfor <?php ob_start(); session_start(); include('config.php'); if(!$logged[username]) { echo("Du er ikke innlogget!"); } # If User Isnt Logged In else{ $result = mysql_query('SELECT id FROM users WHERE username = '.quote_smart($logged['username'])); $resultObj = mysql_fetch_object($result); $bruker_id = $resultObj->id; $pris = 5000; $checkaccess = mysql_query("SELECT id FROM fight_info WHERE id=$bruker_id"); $checkaccess= mysql_num_rows($checkaccess); if ($checkaccess == 0) { echo("Du har ikke tilgang til å besøke den kongelige arenaen. Det koster $pris mynter.<br><br>"); echo("<form action='?side=fightlist&go=fightlist&act=kjopTilgang' method='post'><input type='submit' value='Kjøp tilgang'></form>"); } else { mysql_query("DELETE FROM fight_list WHERE `timestamp` < " . (time() - 300)) or die(mysql_error()); echo("<form action='?side=fightlist&go=fightlist&act=trening' method='post'> <input type='radio' name='trening' value='2'>Styrketrening - 3 minutter ventetid - 2%<br> <input type='radio' name='trening' value='4'>Slåss med dukke - 6 minutter ventetid - 4%<br> <input type='radio' name='trening' value='7'>Slåss med trener - 9 minutter ventetid - 7%<br> <br><input type='submit' value='Utfør trening'></form>"); echo("<form action='?side=fightlist&go=fightlist&act=nykamp' method='post'><input type='submit' value='Gå til kamp!' /></form>"); echo("Brukere som er klare for kamp (alle eldre enn 5 minutter blir slettet):<br><br>"); $brukersporring = "SELECT f.id, f.timestamp, u.id, u.username FROM fight_list e INNER JOIN fight_list f USING (id) INNER JOIN users u USING (id)"; $result = mysql_query($brukersporring) or die("Error: " . mysql_error()); while ($line = mysql_fetch_row($result)) { echo "<b>" . $line[3] . "</b><br>"; } mysql_free_result($result); } switch($_GET[act]) { case 'nykamp': mysql_query("DELETE FROM fight_list WHERE `timestamp` < " . (time() - 300)) or die(mysql_error()); $query = "SELECT id FROM fight_list WHERE id = '". $bruker_id ."'"; $result = mysql_query($query) or die("Error: " . mysql_error()); while ($line = mysql_fetch_row($result)) { $check = $line[0]; } mysql_free_result($result); if (!empty($check)) { echo "<br><b>Du er allerede klar for kamp.</b>"; } else { mysql_query("INSERT INTO fight_list (id ,`timestamp`) VALUES($bruker_id, " . time() . ")") or die(mysql_error()); $brukersporring = "SELECT f.id, f.timestamp, u.id, u.username FROM fight_list e INNER JOIN fight_list f USING (id) INNER JOIN users u USING (id)"; $result = mysql_query($brukersporring) or die("Error: " . mysql_error()); while ($line = mysql_fetch_row($result)) { echo "<b>" . $line[3] . "</b><br>"; } mysql_free_result($result); echo("<br><b>Du er nå klar for kamp!</b>"); } break; case 'trening': $sporring = mysql_query("SELECT `timestamp` FROM fight_info WHERE id = '$bruker_id'"); $sporringObj = mysql_fetch_object($sporring); $timestamp = $sporringObj->timestamp; $trening = $_POST["trening"]; $sql = mysql_query("SELECT * FROM fight_info") or die(mysql_error()); $row = mysql_fetch_object($sql) or die(mysql_error()); if ($trening == 0) { echo("<b>Du har ikke valgt noen treningsmetoder og kan derfor ikke trene.</b>"); } else { if ($trening == "2") { $venteminutter = 3; } if ($trening == "4") { $venteminutter = 6; } if ($trening == "7") { $venteminutter = 9; } if ( ($row->percent + $trening) >= 100) { if ($timestamp < time()) { $fields = 'percent = ' . ($row->percent + $trening - 100) . ', level = (' . $row->level . ' + 1)'; echo("<b>Du har nå trent og må hvile i $venteminutter minutter.</b><br> <b>Du har gått opp en level!</b><br>"); mysql_query("UPDATE fight_info SET `timestamp` = " . (time() + (60*$venteminutter)) . " WHERE id = $bruker_id") or die(mysql_error()); mysql_query("UPDATE fight_info SET $fields WHERE id = $bruker_id") or die(mysql_error()); } else { echo("<b>Du kan ikke trene nå. Du må hvile i $venteminutter minutter først.</b>"); } } else { if ($timestamp < time()) { $fields = 'percent = ' . ($row->percent + $trening); echo("<b>Du har nå trent og må hvile i " . $venteminutter . " minutter.</b><br>"); mysql_query("UPDATE fight_info SET `timestamp` = " . (time() + (60*$venteminutter)) . " WHERE id = $bruker_id") or die(mysql_error()); mysql_query("UPDATE fight_info SET $fields WHERE id = $bruker_id") or die(mysql_error()); } else { echo("<b>Du kan ikke trene nå. Du må hvile i $venteminutter minutter først.</b>"); } } } break; case 'kjopTilgang': $result = mysql_query('SELECT lommebok FROM users WHERE username = '.quote_smart($logged['username'])); $resultObj = mysql_fetch_object($result); $lommebok = $resultObj->lommebok; if($lommebok < $pris) { echo("<b>Du har ikke nok penger i lommeboken.</b>"); } else { mysql_query("UPDATE users SET lommebok = (lommebok - $pris) WHERE username = '$logged[username]'"); mysql_query("INSERT INTO fight_info (id) VALUES ($bruker_id)") or die(mysql_error()); echo("<b>Du har betalt 5000 mynter og har fått tilgang til den kongelige kamparenaen.</b>"); } break; } } ?> I denne koden oppdateres variabelen, $venteminutter, hver gang scriptet kjøres, men det vil jeg ikke... Hver gang "if ($timestamp < time()) {" eller " if ( ($row->percent + $trening) >= 100) {" kjøres vil jeg at variabelen skal oppdateres. Slik som koden er nå vet jeg så og si hvorfor det IKKE virker, men ikke hvordan jeg skal få det til å virke... Takker så mye for svar
Crowly Skrevet 1. mai 2007 Skrevet 1. mai 2007 Har du prøvd dette ? if ($trening == "2" AND ($timestamp <= time() OR $timestamp==FALSE)) $venteminutter = 3; if ($trening == "4" AND ($timestamp <= time() OR $timestamp==FALSE)) $venteminutter = 6; if ($trening == "7" AND ($timestamp <= time() OR $timestamp==FALSE)) $venteminutter = 9; Er ikke sikker på at det fungerer, men håper det hjelper deg i riktig rettning.
Rinox Skrevet 1. mai 2007 Forfatter Skrevet 1. mai 2007 Takk, dere Brukte Sessions og da virket det fint
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå