2015-10-04 3 views
-1

Вот мой код:PHP MySQL обратный запрос неправильный результат

<?php 
    if(isset($_POST["stjel"])) { 
     if($_POST["type"] == "Penger") { 
      $luck = rand(1,4); 
      $randuser = $sql->query("SELECT brukernavn FROM `brukere` WHERE `level`='1' AND `liv`>='0' ORDER BY RAND() LIMIT 1"); 
      $randbruker = $sql->query("SELECT * FROM `brukere` WHERE `brukernavn`='$randuser'"); 
      $target = mysql_fetch_object($randbruker); 
      $hvormyefra = $target->hand * 0.15; 
      $amount = $targed->hand - $hvormyefra; 
      if($luck == 1) { 
       echo"<div class=\"velykkett\">You stoled $amount from"; 
       echo $randuser; 
       echo"</div>"; 
      } else { 
       echo"You failed to steal money!"; 
      } 
     } 
    } 
?> 

все, что $randuser возвращение Resource id #39 мне нужно ут возвращать случайное brukernavn и не Resource id #39, как я могу это исправить? так как теперь это испортит мой код

+1

Функция 'query' возвращает ресурс. Из которого вы можете получить то, что вам нужно. –

+0

@u_mulder есть ли другой способ, я могу это сделать?/Как я могу получить ресурс ive, но он только дает мне Идентификатор ресурса № 39 –

+1

Вы уже писали '$ target = mysql_fetch_object ($ randbruker);'. Вам не кажется, что вы должны сделать то же самое с '$ randuser'? –

ответ

1

Вы должны получать и хранить результаты в другой переменной. $ randuser всегда будет возвращать идентификатор ресурса. Кроме того, вам не нужно писать два отдельных запроса для извлечения всей информации случайного пользователя. Попробуйте удалить оба запроса и напишите только один.

SELECT * FROM `brukere` WHERE `level`='1' AND `liv`>='0' ORDER BY RAND() LIMIT 1 

Этот запрос выберет случайного пользователя и вернет все данные относительно него.

Смежные вопросы