2014-01-10 5 views
-1

Это время отнимает много времени. Пожалуйста, помогите мне. :(Как использовать выбранное значение для отображения динамического содержимого?

Я пытался получить значение выбранного элемента без загрузки страницы и после этого присвоить его переменной PHP, так что я могу использовать его, чтобы получить значение из моей базы данных (sql)

Например, я выбрал значение из раскрывающегося списка с надписью «Тема», после чего у меня должен быть код для получения «Код темы» из моей базы данных и отображения его в текстовом поле сразу после выбора subject from «Subject».

--- Я пробовал javascript, jquery, все, что я сделал, чтобы получить выбранное значение и di переименуйте его, но не привяжите его к переменной php. Пожалуйста, помогите мне :(

Спасибо заранее :)

+7

Без не загрузки страницы ничего не происходит вообще: P –

+4

Ajax вызов на php-страницу OnChange событие в раскрывающемся списке. – Goikiu

+0

PHP «предварительно обработан», то есть после загрузки страницы, выполнение завершается, а переменные удаляются из памяти. – Flosculus

ответ

1

После некоторого времени, я понял, что нужно делать. На самом деле я получил решение от w3schools :) Спасибо, что проинформировал меня о том, что делать. :) Это не настоящая программа. Я просто использовал его для экспериментов. Хехе.

Отправлено это на случай, если кто-то захочет узнать, как это сделать.

Html с PHP

<?php 
    include('connect-db.php'); 
    echo '<table>'; 
    $fac="faculty"; 
      $a = mysql_query("SELECT * FROM admins WHERE user_type='$fac'") 
                or die(mysql_error()); 
      echo '<tr>  
       <td style="font:11pt/30pt Helvetica, sans-serif; color: #000000;">Faculty Name: </td> 
       <td> 
        <select name="Faculty_Name" id="Faculty_Name" onchange="myfunction(this.value)"/>'; 
      $ctrs=0; 
      echo '<option value="">--select--</option>'; 
      while($fname=mysql_fetch_array($a)) 
      { 

       echo '<option value="'. $fname['fullname'].'"> '.$fname['fullname'].'</option>'; 

      }   
      echo '</select></td> 
       </tr>'; 

      echo '<tr><td> <p>Faculty Id: <span id="txtHint"></span></p> </td></tr>'; 

    echo '</table>'; 

?> 

сценарий

function myfunction(str) 
      { 
       var xmlhttp; 


       if (str.length==0) 
        { 
        document.getElementById("txtHint").innerHTML=""; 
        return; 
        } 

       if (window.XMLHttpRequest) 
        {// code for IE7+, Firefox, Chrome, Opera, Safari 
        xmlhttp=new XMLHttpRequest(); 
        } 
       else 
        {// code for IE6, IE5 
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
        } 
       xmlhttp.onreadystatechange=function() 
        { 
        if (xmlhttp.readyState==4 && xmlhttp.status==200) 
        { 
        var x = document.getElementById("Faculty_Name").selectedIndex; 
       var val = document.getElementsByTagName("option")[x].value; 

        document.getElementById("txtHint").innerHTML=xmlhttp.responseText; 
        } 
        } 
       xmlhttp.open("GET","dynamic.php?q="+str,true); 
       xmlhttp.send(); 
      } 

dynamic.php

<?php 
include('connect-db.php'); 
$q=$_REQUEST["q"]; 
$q2=mysql_real_escape_string($q); 
$a = mysql_query("SELECT id FROM admins WHERE fullname='$q2'") or die(mysql_error()); 
$item=mysql_fetch_array($a); 
echo $item['id']; 
?> 
Смежные вопросы