2014-11-24 3 views
0

У меня есть два выпадающих списка на моей веб-странице, где я выбираю менеджера и проект.Опубликовать данные с javascript для php

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

Я думаю, что не могу сделать это без помощи javascript и ajax.

Итак, я передал выбранное значение менеджера в файл javascript, и снова я разместил значение с помощью ajax. Но, похоже, код не работает.

Вот мой код php.

<form method="post" action="<?php $_PHP_SELF ?>"> 
    Select Manager <select id='managed' name="managed" onchange="getManager()"> 
         <option value="">---select---</option> 
<?php 
    $conn=mysqli_connect('localhost','root','root','projmanagement'); 
    $result=mysqli_query($conn,'SELECT manager_id,manager_name FROM manager'); 
    while($row=mysqli_fetch_assoc($result)) { 
     echo "<option value='$row[manager_id]'>$row[manager_name]</option>"; 
    } 
?> 
        </select> 
      Select Project <select name="projectsd"> 
           <option value="">---select---</option> 
<?php   
    $temp = $_POST['managed']; 
    var_dump($temp); 
    die(); 
    $result1=mysqli_query($conn,'SELECT project_id,project_name FROM project inner join manager on project.m_id=$temp'); 
    while($row1=mysqli_fetch_assoc($result1)) { 
     echo "<option value='$row1[project_id]'>$row1[project_name]</option>"; 
    } 
?> 

Это мой код Javascript.

function getManager() { 
    var myvar=document.getElementById('managed').value; 

    var xmlhttp; 
    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) { 
      document.getElementById("managed").innerHTML = xhr.responseText; 
     } 
    } 
    xmlhttp.open("POST","TaskMaster.php",true); 
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
    xhr.send("managed=" + myvar); 
} 

Я начинаю пользоваться php и javascript.

Пожалуйста, дайте мне идею, чтобы решить мою проблему.

+0

Ну для начала, вам нужно только 1 поле выбора на экране, и как только вы выбрали менеджер, вы добавляете некоторый html-код с сгенерированным выбором, который вы создали из своего ajax-вызова – Naruto

+0

@Naruto Спасибо. – user3663600

ответ

0

Попробуйте:

<form method="post" action="<?php $_PHP_SELF ?>"> 
    Select Manager <select id='managed' name="managed" onchange="getManager()"> 

     <option value="">---select---</option> 
<?php 
     $conn=mysqli_connect('localhost','root','root','projmanagement'); 
     $result=mysqli_query($conn,'SELECT manager_id,manager_name FROM manager'); 
     while($row=mysqli_fetch_assoc($result)) { 
      echo "<option value='$row[manager_id]'>$row[manager_name]</option>"; 
     } 
     ?> </select> 
     Select Project <div id="project_container"><select name="projectsd"></div> 

JS:

function getManager() 
{ 
var myvar=document.getElementById('managed').value; 

    var xmlhttp; 
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) 
    { 

    document.getElementById("project_container").innerHTML = xhr.responseText; 
} 
} 
xmlhttp.open("POST","TaskMaster.php",true); 
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
xhr.send("managed=" + myvar); 
    } 
+0

xhr.send ("managed =" + myvar); В php-файле я написал это как & temp = $ _POST ['managed']; var_dump ($ температура); умереть(); , Но я не могу получить значение из файла javascript. – user3663600

+0

Почему вы используете & temp = $ _POST ['managed']; вместо этого используйте $ temp = $ _POST ['managed']; – Pankaj

+0

А также вы можете печатать_r ($ _ POST); для дополнительной отладки ... – Pankaj

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