2014-11-19 5 views
1
$stmt = $mysqli->prepare("SELECT id,name,master,level,exp FROM player.guild ORDER BY exp DESC"); 
$stmt->execute(); 
$stmt->bind_result($id, $name, $master, $level, $exp); 
$stmt->fetch(); 
$guildnum = $stmt->num_rows; 
$stmt->store_result(); 
$stmt->close(); 

$stmt2 = $mysqli->prepare("SELECT id,login FROM account.account WHERE id=?"); 
$stmt2->bind_param("i", $master); 
$stmt2->execute(); 
$stmt2->bind_result($boss_id, $boss_name); 
$stmt2->store_result(); 
$stmt2->close(); 

$stmt3 = $mysqli->prepare("SELECT empire FROM player.player_index WHERE id=?"); 
$stmt3->bind_param("i", $boss_id); 
$stmt3->execute(); 
$stmt3->bind_result($empire); 
$stmt3->store_result(); 
$stmt3->close();  

$ stm2 и $ Стм3 не возвращает результат ..

// ОБЪЯСНЯЯ КОД

$ STM принеси данные и хранить их в $ переменные

$ stm2 использует переменную $ мастер, чтобы принести «ID» и «вход» и хранить их в другие переменные

$ Стм3 использует $ boss_id (хранится $ stm2) для получения d установить переменную $ империю

// ОБЪЯСНЯЯ КОД

Может кто-нибудь мне помочь, пожалуйста?

С уважением.

+0

выливать '$ master'. есть что-нибудь в этом? – vaso123

+0

$ хозяин пуст **** Редактировать **** $ master показывает 1, является правильным. –

+0

Tried 'printf (" Error2:% s. \ N ", $ stmt2-> ошибка);' но без ошибок .. –

ответ

0

Так что, если все правильно, просто нужно fetch значения (bind_result)

$stmt = $mysqli->prepare("SELECT id,name,master,level,exp FROM player.guild ORDER BY exp DESC"); 
    $stmt->execute(); 
    $stmt->bind_result($id, $name, $master, $level, $exp); 
    $stmt->fetch(); //fetch values 
    $guildnum = $stmt->num_rows; 
    $stmt->store_result(); 
    $stmt->close(); 

    $stmt2 = $mysqli->prepare("SELECT id,login FROM account.account WHERE id=?"); 
    $stmt2->bind_param("i", $master); 
    $stmt2->execute(); 
    $stmt2->bind_result($boss_id, $boss_name); 
    $stmt2->fetch(); //fetch values 
    $stmt2->close(); 

    $stmt3 = $mysqli->prepare("SELECT empire FROM player.player_index WHERE id=?"); 
    $stmt3->bind_param("i", $boss_id); 
    $stmt3->execute(); 
    $stmt3->bind_result($empire); 
    $stmt3->fetch(); //fetch values 
    $stmt3->close(); 
+0

Что изменилось с моим кодом? ... –

+0

Извините, что забыл добавить комментарий: '$ stmt-> fetch();' –

+0

Он работает! благодаря! –

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