2017-02-20 4 views
-2

Так что я пытаюсь сделать это, когда я выберу что-то из первого окна выбора, создаст переменную PHP.Ajax создает переменную PHP из selectbox

В окне выбора я выбираю вариант 1, он создаст переменную php, такую ​​как $ number = 1 ;. или если я выберу вариант 5, он создаст переменную типа $ number = 5 ;.

Я знаю, что это требует ajax, но у меня есть минимальный опыт без этого.

Код:

<form class="form-horizontal row" id="select-service"> 
<div class="form-group"> 
    <label class="col-sm-4 control-label">Select Social Media</label> 
    <div class="col-sm-4"> 
     <select class="form-control" name="category" id="category" onchange="func(this.value)"> 
      <?php 
    $stmt = $pdo->prepare('SELECT * FROM categories'); 
    $stmt->execute(); 
    if($stmt->rowCount() > 0) { 
       echo'<option selected="true" style="display:none;">Select a social media</option>'; 
      } else { 
       echo '<option selected="true" style="display:none;">No social medias are available</option>'; 
      } 

      while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
       echo '<option value="'.$row['id'].'">'.$row['name'].'</option>'; 
      } 
    ?> 
     </select> 
    </div> 
</div> 
<div class="form-group"> 
    <label class="col-sm-4 control-label">Select Service</label> 
    <div class="col-sm-4"> 
     <select class="form-control" id="service" onchange="quantity(this.value)"> 
      <option selected="true" style="display:none;">Please select a category.</option> 
     </select> 
    </div> 
</div> 

<ul class="pager wizard"> 
    <div class="pull-right"> 
     <li class="next"> 
      <button href="#" class="btn btn-info"><i>Next</i></button> 
     </li> 
    </div> 
</ul> 

+3

Тогда его время, чтобы попасть в книги или найти один из многих учебников там, в Интернете. SO не является учебным сайтом – RiggsFolly

+0

Я прошел несколько учебников, а что нет. Все, кажется, не для меня. –

ответ

0

Вы не можете изменить PHP переменные во время выполнения (по крайней мере, не из того же документа, вы выполняете скрипт AJAX). Это связано с тем, что PHP и jQuery выполняются на разных уровнях: PHP - обработка на стороне сервера, а jQuery - на стороне клиента.

Да. AJAX можно использовать для создания PHP-запросов, но он не может точно изменять переменные в режиме реального времени.

AJAX - это клиентское решение для вызова внешних php файлов. в этих файлах вы могли бы сделать в основном все, что вы можете сделать с помощью запроса PHP:

  • Чтение данных с сервера
  • Вставка данных на сервер
  • Обновление параметров

Etcetera.

Что вы можете сделать, в зависимости от того, что вам нужно, это ваш сайт, чтобы вам было нужно, используя внешний php-файл.

Вы называете myfile.php?number=1 использованием AJAX

, а затем в myfile.php

<?php 
$number = $_GET["number"]; // this sets the $number var to 1 
//process or do whatever you need with the number 
echo $number; 
?> 

Этот echo вызов не будет отображаться на Sceen, как это обычно и бывает, но вместо этого вы запрашиваете его Javascript или JQuery и процесс что вам нужно.

Я рекомендую вам прочитать W3 Schools guide on AJAX for JS, потому что в нем содержатся примеры, и это очень хорошо объяснено, что вы можете сделать и как это сделать.

Смежные вопросы