2017-02-20 51 views
-2

所以我試圖做到這一點,當我從第一個選擇框中選擇一些將創建一個PHP變量。從selectbox創建PHP變量的Ajax

說在選擇框中,我選擇選項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請求做:

  • 讀數據從服務器
  • 插入數據到服務器
  • 更新參數

等等。

你可以做什麼,取決於你需要的是設計你的網站,所以你需要使用外部的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,因爲它包含示例,它很好地解釋了你可以做什麼以及如何實現它。