PHP mysqli拡張をプリペアドステートメントで使用していますが、1つのクエリではクエリオブジェクトを作成していません。PHP Mysqliが文オブジェクトを作成しないで準備しました
$sqlq = "SELECT id,name FROM productcategories JOIN products ON productcategories.productid = products.id WHERE categoryid=?";
if($allsubcats)
{
foreach($allsubcats as $key => $data)
{
$sqlq .= " OR categoryid=?";
}
}
echo $sqlq;
if($query = $this->mysqli->connection->prepare($sqlq))
{
$query->bind_param("i", $cat);
if($allsubcats)
{
foreach($allsubcats as $key => $data)
{
$query->bind_param("i", $data[0]);
}
}
$query->execute();
$query->bind_result($id,$name);
$query->store_result();
if($query->num_rows > 0)
{
while($row = $query->fetch())
{
$allprods["id"] = $id;
$allprods["name"] = $name;
}
}
$query->close();
}
問題:
線if($query = $this->mysqli->connection->prepare($sqlq))
if()
がfalseを返すので、$query
オブジェクトを作成しない、内部コードのいずれかを実行していない。ここで
コードでありますif。
echo $sqlq;
リターン:????製品のリストFROM
は、「IDを選択し、名前はproductcategories.productid = products.id WHERE区分コード= OR区分= OR区分= OR区分= OR区分= ONの製品を登録しようか! OR categoryid =? "
私には何も間違いはありません。
任意の助けをいただければ幸いです、
おかげで、ニコ
あなたが唯一の人ではありません^^そして、あなたは優れた反射を得て、解決策を提供するために戻ってきました:-) –
あなた自身の質問に答えるために投票しましたwhoda:D – rezzif
ラバーダッキングftw 。 http://www.c2.com/cgi/wiki?RubberDucking – hobodave