Log in

View Full Version : ajax help



jangkoo
10-04-2010, 07:20 PM
Hi,
I am trying an ajax technique to insert data but it doesn't work.
here is the code
The purpose is that insert the message of a chatbox to db


<?php

echo"<form name='chat'>";
if (!isset($_COOKIE["user"])|| $_COOKIE["user"]=="")
{
echo "Your name";
echo "<input type='text' size=20 id='name'>";
}
echo "<textarea cols='21' rows='5' id='message' >Write here</textarea>";
echo "<input onclick='loadContent()' style=' background-color:#0F6' name='CHAT' type='submit' value='CHAT' />";
echo "</form>";
?>


<script type="text/javascript" >
function loadContent(){
//Browsers support
xmlhttp=new XMLHttpRequest();
var name=document.getElementById("name").value;
var message=document.getElementById("message").value;
xmlhttp.open("GET","chatbox.php",true);
xmlhttp.send(null);
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
</script>



<?php
header("location: index.php");
include ("dbconnect.php");
/*if(isset($_POST['CHAT']))
{
if (!isset($_COOKIE["user"])|| $_COOKIE["user"]=="")
{
if ($_POST['name']==NULL) exit();
else
$username=$_POST['name'];
}
else
{
$username=$_COOKIE["user"];
}
$message=$_REQUEST['message'];*/
$name=$_GET["name"];
$message=$_GET["message"];
$date=date("d/ m h:i");
$query="insert into chatbox(username,chat,time) values ('$username','$message','$date')";
mysql_query($query) or die(mysql_error());

}
?>

bluewalrus
10-04-2010, 08:05 PM
I think your problem is your ajax request.


xmlhttp.open("GET","chatbox.php",true);

should be


xmlhttp.open("GET","chatbox.php?name=" + name + "&message=" + message,true);

Actually you should move the header down to the end of the process as well.



<?php
include ("dbconnect.php");
/*if(isset($_POST['CHAT']))
{
if (!isset($_COOKIE["user"])|| $_COOKIE["user"]=="")
{
if ($_POST['name']==NULL) exit();
else
$username=$_POST['name'];
}
else
{
$username=$_COOKIE["user"];
}
$message=$_REQUEST['message'];*/
$name=$_GET["name"];
$message=$_GET["message"];
$date=date("d/ m h:i");
$query="insert into chatbox(username,chat,time) values ('$username','$message','$date')";
mysql_query($query) or die(mysql_error());
//}
header("location: index.php");
?>