busby Posted January 7, 2011 Share Posted January 7, 2011 hey...im trying to display messages stored in a database on a page using ajax. a user should choose from a drop down list the title of the message and then on selection that message should appear just below. but i cant seem to do it and i dont know why there is no errors in what ive got so far. here is the code for the drop down box where the user would select the title. <form> <select name="users" onchange="showMessage(this.value)"> <option value="">Select a message:</option> <?php while($rows = mysql_fetch_array($results)) {?> <option value="1"><?php echo $rows['heading']; ?></option> <?php } ?> </select> </form> <br /> <div id="txtHint"><b>Message info will be listed here.</b></div> the drop down is successfully populated with the correct titles. here is the javascript in the HEAD of the same page: <script type="text/javascript"> function showUser(str) { if (str=="") { 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) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","getuser.php?q="+str,true); xmlhttp.send(); } </script> and here is the php file which is used to display the message upon selection. <?php $q=$_GET["q"]; $con = mysql_connect('localhost', 'peter', 'abc123'); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("ajax_demo", $con); $sql="SELECT * FROM user WHERE id = '".$q."'"; $result = mysql_query($sql); echo "<table border='1'> <tr> <th>Firstname</th> <th>Lastname</th> <th>Age</th> <th>Hometown</th> <th>Job</th> </tr>"; while($row = mysql_fetch_array($result)) { echo "<tr>"; echo "<td>" . $row['FirstName'] . "</td>"; echo "<td>" . $row['LastName'] . "</td>"; echo "<td>" . $row['Age'] . "</td>"; echo "<td>" . $row['Hometown'] . "</td>"; echo "<td>" . $row['Job'] . "</td>"; echo "</tr>"; } echo "</table>"; could someone please take a look at this and see whats wrong? ive spent so long on it. if you could tell me how to correct it it would be great Quote Link to comment https://forums.phpfreaks.com/topic/223710-first-time-with-ajaxcant-get-it-to-work/ Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.