Hoi, Ik wil met de onclick="showuser(users)" de inhoud van het tekstvak users verzenden. showuser is de function. Maar met onderstaande code lukt het niet. hoe moet ik de onclick instellen?
function showUser(str)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}
var url="getuser.php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function stateChanged()
{
if (xmlhttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
// code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
dit is de getuser.php
<?php
$q=$_GET["q"];
$con = mysql_connect('localhost', 'root', 'ww');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("krabbels", $con);
$sql="SELECT * FROM krabbel WHERE id_cate = '".$q."'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$test=$row['link'];
echo '<img src="'.$test.'" border="0" alt="krabbels">';
}
mysql_close($con);
?>
Maak van die slechte PHP code maar eens dit:
<?php
mysql_connect("localhost", "root", "ww") or die ("Er kan geen verbinding gemaakt worden.");
mysql_select_db("krabbels") or die ("Er kan geen verbinding gemaakt worden met de database.");
$sql = mysql_query("SELECT * FROM krabbel WHERE id_cate = '".mysql_real_escape_string($_GET['q'])."'");
while($krabbel = mysql_fetch_assoc($sql)) {
echo '<img alt="Krabbels" src="'.$krabbel['link'].'" border="0" />';
}
?>
Dat is een stuk eenvoudiger en veiliger.
Hiermee moet ik denk ik trouwens wel lukken:
function showUser(str) {
var xmlhttp;
if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
xmlhttp = new XMLHttpRequest();
}
if (xmlhttp == null) {
alert("Browser does not support HTTP Request");
return;
}
var url="getuser.php?q=" + str + "&sid=" + Math.random();
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
document.getElementById('txtHint').innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send(null);
}
Bedankt voor de snelle hulp.
Maar het werkt nog niet, krijg nu een foutmelding: fout op de pagina.
Heb nu dit in de index pagina staan en de andere 2 bestanden heb ik over genomen van Hoithebest, zie bericht hier boven.
<html>
<head>
<script type="text/javascript" src="selectuser.js"></script>
</head>
<body>
Select a User:
Maak van this.form.users eens this.form.users.value.
Verder is het niet aan te raden dat je met een root-account queries uitvoert als dat niet nodig is.