Это как раз тот случай, когда мое связанное решение приходит на помощь. Если вы не можете настроить его для своих нужд, пожалуйста, спросите меня.
аюсь создать запрос выбора с динамическим предложением where и динамическими параметрами, но всегда получаю сообщение об ошибке:
Предупреждение: mysqli_stmt :: bind_param (): количество элементов в строке определения типа не совпадает с числом переменных связывания
Что я искренне не понимаю, так как кажется, что все в порядке. Вот как на самом деле выглядит код в своем грубом формате. Я не вижу, что я делаю не так.
//get variables
$mediaArray ='Facebook,Twitter,Twitch,';
$otherMedia = 'House';
//convert string to array
$socialArray = explode(',', $mediaArray)
//declare some variables to be used later
$andwhere = '';
$bp = '';
$socialmarray = ''
//get every value from array of social media
foreach($socialArray as $socialmedia){
$socialmarray .=$socialmedia.',';
$andwhere .= " AND socialmedianame=?";
$bp .='s';
}
//test strings
echo $wheres = $andwhere;//AND socialmedianame=? AND socialmedianame=? AND socialmedianame=?
echo $bip = $bp.'s';//ssss
echo $validarayy = rtrim($socialmarray,',');//Facebook,Twitter,Twitch
//select query
$selectquery = $conn->prepare("select * from mediaservices where socialmedianame=? $wheres");
$selectquery->bind_param("$bip",$otherMedia,$validarayy);
$selectquery->execute();
$resultquery = $selectquery->get_result();