-1
私はmysqlデータベースからデータを取得する2つの検索ボックスでライブ検索を行っています。送信ボタンを押すと、ユーザーが入力したデータベースの行のデータが表示されます。私の問題は、それはクエリから異なる値を出力するが、2番目の検索ボックスからのみ出力され、なぜ見つけることができないということです。データを取得するmysql php
のjQuery:
は、ここに私のコードです
$(document).ready(function(){
$('#button').on('click', function(){
var smartphone1 = $('#smartphone1').val();
var smartphone2 = $('#smartphone2').val();
if ($.trim(smartphone1) != '' && $.trim(smartphone2) != ''){
$.post('fetchdata.php', {smartphone1: smartphone1, smartphone2: smartphone2}, function(data){
$('#namedata').text(data);
});
}
});
});
PHP:
if (isset($_POST['smartphone1']) AND isset($_POST['smartphone2'])) {
if (empty($_POST['smartphone1']) AND empty($_POST['smartphone2'])) {
exit();
}
$recherche = filter_input(INPUT_POST, 'smartphone1', FILTER_SANITIZE_STRING);
$recherche = filter_var($recherche, FILTER_SANITIZE_SPECIAL_CHARS);
$search = filter_input(INPUT_POST, 'smartphone2', FILTER_SANITIZE_STRING);
$search = filter_var($search, FILTER_SANITIZE_SPECIAL_CHARS);
require "databasecon.php";
$mysqli = new mysqli($host_name, $user_name, $password, $database);
if (!$stmt = $mysqli->prepare("SELECT name , capacityingo , ram , prix , photoquality FROM smartphone WHERE name = ?")) {
$error = array
(
'error' => 'The statement could not be prepared'
);
echo json_encode($error);
exit();
}
$stmt->bind_param('s', $recherche);
$stmt->bind_param('s', $search);
if (!$stmt->execute()) {
$error = array
(
'error' => 'The statement could not be executed'
);
echo json_encode($error);
exit();
}
$res = $stmt->get_result();
$datasmartphone1 = array();
$datasmartphone2 = array();
while ($row = $res->fetch_assoc())
{
//add each result to an array
$datasmartphone1[] = $row;
$datasmartphone2[] = $row;
}
//print the array encoded in JSON
echo json_encode($datasmartphone1);
echo json_encode($datasmartphone2);
}
はあなたの助けをいただき、ありがとうございます。
2つのアレイのための2番目の検索ボックスの値を使用するように変更しなければならないと思いますか?何のために? –