Intereting Posts
woocommerce_thankyou вызывается 4 раза Ссылка на извлечение PHP из тега <a> Как узнать, соблюдает ли часовой пояс летнее время в любое время года? Получить данные запроса PATCH в PHP MySQL Search w / Упорядоченные подстановочные знаки и извлечение их значений Как сделать xml-файл из php и mysql Как использовать глобальный тип пространства имен, намекающий внутри класса с именами в PHP 5.3+? Простой сценарий рандомизации A / B с PHP Paypal Access – сертификат SSL: не удалось получить сертификат локального эмитента Обработка данных формы динамически заполняется из базы данных Итерация многомерного массива рекурсивно и возврат той же структуры массива и вставка нового ключа / значений в PHP Как сделать системный вызов удаленно? Количество запросов MySQL, выполняемых на странице Преобразование плоского массива в массив, сгруппированный по категориям Веб-службы PHP и Exchange: выборка тела сообщения с использованием php-ews

получение конкретной переменной php из цикла для параметра функции jquery

У меня есть aut suggest textbox witch генерирует теги li с событием onclick с функцией, но мне нужно передать переменную php в функцию как параметр, но мне нужно только значение переменной li, на которое пользователь нажал, и теперь я всегда получаю последняя переменная в цикле. И я хочу, чтобы тест var был значением $ test = $ row ['t_product']; пользователя, на который пользователь нажимает

вот код im, использующий сейчас:

if(isset($_POST['search_term']) == true && empty($_POST['search_term']) == false){ $search_term = $_POST['search_term']; $customerid = $_SESSION['userdata']['t_customer_id']; $conn = connect(); $sql = "SELECT * FROM Licenses WHERE customer_id = '$customerid' AND t_name LIKE '$search_term%'"; $query = sqlsrv_query($conn, $sql); while(($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)) != false){ $test = $row['t_product']; ?> <script type="text/javascript"> var test = <?php echo json_encode($test); ?>; </script> <?php echo '<li onclick="show(test)">', $row['t_name'], '</li>'; } } 

я надеюсь, что я хорошо объяснил свою проблему и надеюсь, что какое-то снижение поможет мне 🙂

Ну, может быть, вы должны это сделать:

 while(($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)) != false){ $test = $row['t_product']; ?> <?php echo '<li onclick="show("'.$test.'")">', $row['t_name'], '</li>'; } 

или

 if(isset($_POST['search_term']) == true && empty($_POST['search_term']) == false){ $index = 0; $search_term = $_POST['search_term']; $customerid = $_SESSION['userdata']['t_customer_id']; $conn = connect(); $sql = "SELECT * FROM Licenses WHERE customer_id = '$customerid' AND t_name LIKE '$search_term%'"; $query = sqlsrv_query($conn, $sql); while(($row = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)) != false){ $test = $row['t_product']; ?> <script type="text/javascript"> var test<?php echo $index++ ?> = "<?php echo $test; ?>"; </script> <?php echo '<li onclick="show(test'.$index++.')">', $row['t_name'], '</li>'; } } 

Изменить: удалил json_encode и заменил его кавычками

решил его, передав значение $ test как id для каждого li и в js получим его с

  $test = $row['t_product']; echo '<li onclick="show(this)" id="'.$test.'">', $row['t_name'], '</li>' function show(id){ alert($(id).attr("id"));}