2017-06-17 96 views
0

我得到這個:可捕獲的致命錯誤:當我想插入數據到我的遊戲表中時,mysqli類的對象無法轉換爲字符串錯誤。 在我的games.php上,我有一個向games_add.php發送數據的表單,在games_add.php的第18行發生了錯誤。插入表時出錯

(我知道有很多的代碼)game.php代碼:

<body> 
    <form action="games_add.php" method="post"> 
Game name: <input type="text" name="game_name" placeholder="Enter first name ..." required="required" /><br /> 
Relese date: <input type="date" name="relese_date" placeholder="Enter relese date ..." required="required" /><br /> 
Introduction: <input type="text" name="introduction" placeholder="Enter introduction ..." required="required" /><br /> 
Description: <input type="text" name="description" placeholder="Enter description ..." required="required" /><br /> 
Original price: <input type="number" name="rating" placeholder="Enter original price ..." required="required" /><br /> 

Developer: <select name="developer_id"> 
    <?php 
    include_once 'connection.php'; 
     $query = "SELECT * FROM developers"; 
     $result = mysqli_query($link, $query); 
     while ($row = mysqli_fetch_array($result)) { 
      echo '<option value="'.$row['id'].'">'.$row['name'].'</option>'; 
     }  
    ?> 
</select>  

    Publisher: <select name="publisher_id"> 
    <?php 
    include_once 'connection.php'; 
     $query = "SELECT * FROM publishers"; 
     $result = mysqli_query($link, $query); 
     while ($row = mysqli_fetch_array($result)) { 
      echo '<option value="'.$row['id'].'">'.$row['name'].'</option>'; 
     }  
    ?> 
</select> 



    Categories: <select name="categories_id"> 
    <?php 
    include_once 'connection.php'; 
     $query = "SELECT * FROM categories"; 
     $result = mysqli_query($link, $query); 
     while ($row = mysqli_fetch_array($result)) { 
      echo '<option value="'.$row['id'].'">'.$row['name'].'</option>'; 
     }  
    ?> 
</select> 



    Platform: <select name="platform1_id"> 
    <?php 
    include_once 'connection.php'; 
     $query = "SELECT * FROM platforms"; 
     $result = mysqli_query($link, $query); 
     while ($row = mysqli_fetch_array($result)) { 
      echo '<option value="'.$row['id'].'">'.$row['name'].'</option>'; 
     }  
    ?> 
</select> 


<input type="submit" value="Insert" /> 
<input type="reset" value="Cancle" /> 

games_add.php代碼:

 <?php 
    include_once 'connection.php'; 

     $game_name = $_POST['game_name']; 
     $relese_date = $_POST['relese_date']; 
     $introduction = $_POST['introduction']; 
     $description = $_POST['description']; 
     $rating = $_POST['rating']; 
     $developer_id = $_POST['developer_id']; 
     $publisher_id = $_POST['publisher_id']; 
     $categories_id = $_POST['categories_id']; 
     $platform1_id = $_POST['platform1_id']; 
     $avrage_score = 33; 



      $query = sprintf("INSERT INTO games (game_name, relese_date, introduction, description, rating, developer_id, publisher_id, categories_id, platform1_id, avrage_score) 
           VALUES ('%s','$relese_date','%s','%s','$rating','%s','%s','%s','%s','$avrage_score') or die(mysqli_error($link)); ", 
          mysqli_real_escape_string($link, $game_name), 
          mysqli_real_escape_string($link, $introduction), 
          mysqli_real_escape_string($link, $description), 
          mysqli_real_escape_string($link, $developer_id), 
          mysqli_real_escape_string($link, $publisher_id), 
          mysqli_real_escape_string($link, $categories_id), 
          mysqli_real_escape_string($link, $platform1_id));     
      mysqli_query($link, $query); 
header('Location: games.php'); 
?> 

我的數據庫的圖片,如果有幫助。 enter image description here

回答

0

你確定要「或死(mysqli_error($ link))」成爲你的SQL的一部分,而不是你的PHP的一部分嗎?