mysqli_fetch_array()错误要求参数1为mysqli_result,boolean

时间:2017-10-04 05:07:32

标签: php html mysqli

mysqli_fetch_array error screenshot

嗨,我主要是用php和mysqli进行编码自学。但是,我无法弄清楚为什么这段代码无效。我之前使用过两次相同的代码并且工作正常,但由于某种原因我这次无法让它工作。请帮助任何帮助。

        <?php
    //Database Connection
        include 'dbconn.php';
    //Get ID from Database
        if(isset($_GET['edit_id'])){
        $sql = "SELECT * FROM packages WHERE packageno =" .$_GET['edit_id'];
        $result = mysqli_query($conn, $sql);
        $row = mysqli_fetch_array($result);
    }
//Update Information
    if(isset($_POST['btn-update'])){
    $packageno = $_POST['packageno'];
    $packagename = $_POST['packagename'];
    $packagetime = $_POST['packagetime'];
    $price = $_POST['price'];
    $update = "UPDATE packages SET packageno='$packageno', packagename='$packagename',pacakagetime='$pacakagetime', $price='$price' WHERE packageno=". $_GET['edit_id'];
    $up = mysqli_query($conn, $update);
    if(!isset($sql)){
    die ("Error $sql" .mysqli_connect_error());
    }
    else
    {
    header("location: packedit.php");
    }
    }
   ?>

    <!--Create Edit form -->
<center>
<form method="post">
<h1>Edit Appointment Details</h1>
<label>Package Number:</label>
<input type="text" name="packageno" placeholder="Package Num" value="<?php echo $row['packageno']; ?>"><br/><br/>
<label>Package Name:</label>
<input type="text" name="packagename" placeholder="Package Name" value="<?php echo $row['packagename']; ?>"><br/><br/>
<label>Package Time:</label>&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" name="packagetime" placeholder="Time" value="<?php echo $row['packagetime']; ?>"><br/><br/>
<label>Price:</label>
<input type="decimal" name="price" placeholder="Price" value="<?php echo $row['price']; ?>"><br/><br/>

<button type="submit" name="btn-update" id="btn-update" onClick="update()"><strong>Update</strong></button>
<a href="packedit.php"><button type="button" value="button">Cancel</button></a>
</form>

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

尝试在phpmyadmin中运行Query并检查是否有任何错误。

如果没有错误,请尝试打印 $ conn 变量。如果它给你正确的结果。尝试在你的情况下打印 $ result $ result return false

根据我的理解,数据库表中存在一些问题。

答案 1 :(得分:0)

您应该检查您的查询。当查询中提到的表的名称不存在或拼写错误或您输入的id($ _GET ['edit_id'])无效时,会发生此错误。