I have a database table called quiz(quest ,op1,op2,op3,op4,answer,num), all fields except num are of type varchar ,num being the primary key. now in a php page i need the question(<p>
element) to be dynamically retrieved as quest field, four radio buttons to have their values assigned by the op(n) fields of this database. Please explain how i can do that. html: SELECT ALL
<html>
<head>
<script language="javascript">
function loadXMLDoc()
{
var q=Math.floor((Math.random()*3)+1);
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)
{
[color=#8000FF]document.getElementById("op1").innerHTML=xmlhttp.responseText;
document.getElementById("op2").innerHTML=xmlhttp.responseText;
document.getElementById("op3").innerHTML=xmlhttp.responseText;
document.getElementById("op4").innerHTML=xmlhttp.responseText;[/color]//this is the code i need help //with
}
}
xmlhttp.open("GET","questions.php?num="+q,true);
xmlhttp.send();
}
</script></head>
<h1 align='center'><b>Object oriented programming-#1</b></h1>
<h2 align='center'>Supriya Raheja<h2>
<title>quiz has started</title>
<body>
<div style="text-align:left">
<table border="1">
<tr>
<td width="25%"><table border="0">
<tr>
<td><button type="button">Goto Q1</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q2</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q3</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q4</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q5</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q6</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q7</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q8</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q9</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q10</button></td>
<td><input type="checkbox">
</tr>
<tr>
<td><button type="button">Goto Q11</button></td>
<td><input type="checkbox">
</tr>
</td>
</table>
<td width="1000px">
<input type="radio" name="op1" value="" ></br>
<input type="radio" name="op2" value="" ></br>
<input type="radio" name="op3" value="" ></br>
<input type="radio" name="op4" value="" ></br>
<button style="text-align:bottom" type="button" onclick="loadXMLDoc()">Change
Content</button>
</td>
</tr>
</table>
</body>
</html>
php
<?php
$q=$_GET["q"];
$con = mysqli_connect('localhost','root','ayushigarg','quiz4');
if (!$con)
{
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,"quiz4");
$sql="SELECT * FROM quiz WHERE num = '".$q."'";
$result = mysqli_query($con,$sql);
//echo "<table border='1'>
$row = mysql_fetch_array($result)
echo '{"questionTxt" : "' . $row['quest'] .
'", "answ1" : "' . $row['op1'] .
'", "answ2" : "' . $row['op2'] .
'", "answ3" : "' . $row['op3'] .
'", "answ4" : "' . $row['op4'] .
'", "hint" : "' . $row['hint'] . '"}';
mysqli_close($con);
?>
?>
i want these answ1 , answ2 etc values to be assigned to op1, op2 etc values whecn i click on change content button... pls help
document.getElementById("op2").innerHTML
sets the innerHTML of an element with id op2, for example:
<h1 id="op2">inner HTML</h1>
if you want to set the value of a field, you need to:
document.getElementById("op2").value = "new value";
but i recommend to use jquery for this and you will earn less pain!
I know it was not reqested but to make it clear i can show you how it would work with jquery (untested):
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<script>
$(document).ready(function() {
$('#btn1').click(function(){
var q=Math.floor((Math.random()*3)+1);
var myurl = "questions.php?num="+q;
$.getJSON(myurl, function(data) {
$('#qs1').html(data.questionTxt);
$('#op1').val(data.answ1);
$('#aw1').html(data.answ1);
$('#op2').val(data.answ2);
$('#aw2').html(data.answ2);
$('#op3').val(data.answ3);
$('#aw3').html(data.answ3);
$('#op4').val(data.answ4);
$('#aw4').html(data.answ4);
});
});
});
</script>
<h1 id="qs1"></h1>
<input type="radio" id="op1" name="op" value="" ><span id="aw1"></span></br>
<input type="radio" id="op2" name="op" value="" ><span id="aw2"></span></br>
<input type="radio" id="op3" name="op" value="" ><span id="aw3"></span></br>
<input type="radio" id="op4" name="op" value="" ><span id="aw4"></span></br>
<button style="text-align:bottom" type="button" id="btn1" value="go">
</body>
</html>