Rinox Skrevet 1. mai 2007 Del 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 Lenke til kommentar
Crowly Skrevet 1. mai 2007 Del 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. Lenke til kommentar
Rinox Skrevet 1. mai 2007 Forfatter Del Skrevet 1. mai 2007 Takk, dere Brukte Sessions og da virket det fint Lenke til kommentar
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å