2014-10-06 5 views
0

Мне очень нужна ваша помощь по этому вопросу. Я не могу найти, что не так в моем коде.заполнить текстовое поле на основе значения combobox с помощью ajax

Дело в том, что я пытаюсь заполнить поле текстового поля, основанное на моем значении combobox, и оно связано в базе данных sql. Я пробовал некоторые коды в Интернете, а затем нашел код, который кажется точным, но я не могу показать результат в своем текстовом поле.

вот мой HTML код:

<?php 
echo"Concept Store:"; 
echo "<select width='100' id='strs' name='strs' >"; 
echo "<option></option>"; 
    while($row=sqlsrv_fetch_array($stmt)) 
    { 
     $x= $row['strnm']; 
       echo " <option> $x</option>" ; 
    } 
     echo "</select>"; 
?> 
Address &nbsp&nbsp&nbsp: <input type="text" id="add" name="add" size="27" /><br><br> 

вот AJAX:

<script type="text/javascript"> 
    $(document).ready(function(){ 
    $('#strs').change(function(){ 
     $.post("gadd.php",{strs:$(this.val())},function(result){ 
      $("#add").val(result); 
     }); 
    }); 
    }); 
</script> 

и вот мой 'gadd.php'

<?php 

session_start(); 
include ('sqlconn.php'); 
$gadd=$_post['strs']; 

//$t1= mysql_real_escape_string($t1); 
$sql="Select distinct dadd1 from ostore where strnm='".$gadd."' "; 
$stmt = sqlsrv_query($conn,$sql); 
//echo "<option></option>"; 
while ($row = sqlsrv_fetch_array($stmt)) 
{ 
     // $type2=$row['dadd1']; 
     echo $row['dadd1']; 
     //echo '<option value ="'.$type2.'">'.$type2.'</option>'; 

} 

?> 

, если вы могли бы мне помочь, что было бы действительно действительно потрясающе спасибо!

ответ

0

Проверьте его. Глобальные переменные должны быть в верхнем регистре.

$gadd = $_POST['strs']; 
+0

спасибо, но он все еще не работает :( – user3060463

0

Во-первых, убедитесь, что вы используете правильный формат для глобальных переменных $gadd = $_POST['strs'];

Во-вторых, проверьте ваш запрос, если он работает, попробуйте это

$sql=("Select distinct dadd1 from ostore where strnm = '$gadd'");

0

Большинство problably это потому, что вы 'Отсутствие значения в опции. Используйте это:

echo " <option value='$x'> $x</option>" ; 

вместо этого:

echo " <option> $x</option>" ; 

Если до сих пор не работает, как было сказано выше проверки, если запрос работает. Вы можете сделать это в chrome с помощью опции «Inspect element» и перейти на вкладку «Сеть». Вы можете увидеть, что отправлено через ajax и возвращаемые данные.

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