2017-05-16 8 views
-1

私のデータベースの次の質問に移動するプロセスページを作成するには、このエラーを修正するにはどうすればいいですか:
致命的なエラー:C:\の非オブジェクトのメンバー関数fetch_assoc wamp \ www \ quiz \ process.php on line 32PHPのwampserverのプロセスページ

<?php 
//check to see if score is set_error_handler 
if (!isset($_SESSION['score'])) { 
    $_SESSION['score'] = 0; 
} 

if ($_POST) { 
    $number = $_POST['number']; 
    $selected_choice = $_POST['option']; 
    $next = $number++; 

/* 
* Get total questions 
*/ 
$query = "SELECT * FROM questions"; 

//Get result 
$results = $mysqli->query($query); 
$total = $results->num_rows; 

/* 
* Get correct option 
*/ 
$query = 'SELECT * FROM options WHERE WHERE question_no = $number AND is_correct = 1'; 
// Get result 
$result = $mysqli->query($query); 

// Get row 

$row = $result->fetch_assoc(); 

//Set correct choice 

$correct_choice = $row['id']; 

//Compare 
if ($correct_choice == $selected_choice) { 
    //Answer is correct 
    $_SESSION['score']++; 
+0

あなたのコードは失敗しました。実際のエラーを取得してください –

+0

あなたのコードはエラーをスローしています。mysqli_fetch_assoc()の詳細については、[this](http://www.w3resource.com/php/function-reference/mysql_fetch_assoc.php)を参照してください。 – Nidhi

+0

SELECT * FROM optionsどこに... 1つが多すぎるか。あなたのクエリはおそらく失敗し、結果が戻ってくるかどうかはチェックしません。 – Gerard

答えて

0

以下の****変更された行****を確認してください。 mysqli_fetch_assocの代わりにfetch_assocを使用してください。

/* 
* Get total questions 
*/ 
$query = "SELECT * FROM questions"; 

//Get result 
$results = $mysqli->query($query); 
$total = $results->num_rows; 

/* 
* Get correct option 
*/ 
$query = 'SELECT * FROM options WHERE WHERE question_no = $number AND is_correct = 1'; 
// Get result 
$result = $mysqli->query($query); 

// Get row 

$row = $result->mysqli_fetch_assoc(); // ****Changed Line**** 

//Set correct choice 

$correct_choice = $row['id']; 

//Compare 
if ($correct_choice == $selected_choice) { 
    //Answer is correct 
    $_SESSION['score']++; 
+0

私はfetch_assoc()を試しました。単独でも、まだ文句は同じです –

+0

こんにちは。 mysqli_fetch_assoc()を試しましたか? – Rushit

+0

はい私はmysqli_fetch_assoc()を行った –

関連する問題