Ajax从selectbox创建PHP变量

时间:2017-02-20 16:12:37

标签: php jquery ajax

因此,当我从第一个选择框中选择一些内容时,我会尝试创建一个PHP变量。

在选择框中我选择选项1,它会创建一个像$ number = 1;这样的php变量。或者,如果我选择选项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>

1 个答案:

答案 0 :(得分:0)

您不能在运行时更改PHP变量(至少不能在执行AJAX脚本的同一文档中)。这是因为PHP和jQuery在不同的级别上执行: PHP是服务器端处理,jQuery发生在客户端。

是。 AJAX可用于发出PHP请求,但它并不能完全实时改变变量。

AJAX是用于调用外部 php文件的客户端解决方案。在这些文件中,您基本上可以使用php请求执行任何操作:

  • 从服务器读取数据
  • 将数据插入服务器
  • 更新参数

等等。

你可以做什么,取决于你需要的是设计你的网站所以你需要的东西可以使用外部的PHP文件。

您使用AJAX调用myfile.php?number=1

然后在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因为它包含了一些例子,并且很好地解释了你能做什么以及如何实现它。