下面这个非常简单的脚本旨在返回一个基于GET变量的名字和姓氏。
每次运行脚本时,都会显示此错误:
警告: mysqli_stmt::bind_param():变量数与第10行mypath/names.php中准备好的语句中的参数数不匹配
我已经检查了SQL查询,它在SQLyog中运行得非常好。我还用get变量调用文件: names.php?surname=jo
<?php
ini_set("display_errors",1);
require_once('connection.php');
$db = DB::connect();
$db->select_db("mydb");
$sql = "SELECT forename,surname FROM `people` WHERE `surname` LIKE '?%' LIMIT 1";
if ($stmt = $db->prepare($sql)) {
$stmt->bind_param("s", $_GET['surname']);
$stmt->execute();
$stmt->bind_result($forename, $surname);
$stmt->fetch();
$stmt->close();
}
?>发布于 2013-12-13 10:05:53
你应该试着:
$sql = "SELECT forename,surname FROM `people` WHERE `surname` LIKE ? LIMIT 1";使用
$surname=$_GET['surname']."%";
$stmt->bind_param("s", $surname);https://stackoverflow.com/questions/20563250
复制相似问题