获取SINGLE条目并使用MySQLi显示它?

时间:2014-09-20 14:46:26

标签: php mysqli

我正在尝试检查条目是否存在,我设法这样做但我的if条件(如果条目退出) 我想在数据库中显示整个记录。

$checkstudentID = mysqli_query
($dbcon, "SELECT studentid from courses WHERE studentid = '$studentid'");

if(mysqli_num_rows($checkstudentID) > 0){
     $result = mysqli_query($dbcon, $checkstudentID);
     $row   = mysqli_fetch_row($result);

      $studentid = $row['studentid'];
      $cc    = $row['ckb '];
    }
  • **第一个问题是:是SELECT studentid from courses还是

    从课程中选择studentid第二个输入

  • 我收到以下错误:

    - mysqli_query()期望第32行的参数2为字符串

  • mysqli_fetch_row()要求参数1为mysqli_result,第33行为 时为空

第32行:$ result = mysqli_query($ dbcon,$ checkstudentID);

第33行:$ row = mysqli_fetch_row($ result);

我知道PDO现在要好得多,但我并没有“充分了解”如何使用它并仍在学习mysqli和mysql方法

2 个答案:

答案 0 :(得分:1)

您需要选择ckb,然后准备查询:

/* create a prepared statement */
if ($stmt = mysqli_prepare($dbcon, "SELECT ckb from courses WHERE studentid = ?")) {

    /* bind parameters for markers */
    mysqli_stmt_bind_param($stmt, "s", $studentid); //use i if its an int

    /* execute query */
    mysqli_stmt_execute($stmt);

    /* bind result variables */
    mysqli_stmt_bind_result($stmt, $ckb);

    /* fetch value */
    mysqli_stmt_fetch($stmt);

    printf("studentId = %s | ckb =  %s\n", $ckb, $studentid);

    /* close statement */
    mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($dbcon);

答案 1 :(得分:0)

正确的代码:

$checkstudentID = mysqli_query
($dbcon, "SELECT studentid, ckb from courses WHERE studentid = '$studentid'");

if(mysqli_num_rows($checkstudentID) > 0){
     $row   = mysqli_fetch_row($checkstudentID);

      $studentid = $row['studentid'];
      $cc         = $row['ckb '];
    }