You need AJAX, as everyone has said.
Since you have never written any javascript, here is a guide for you.
Instead of your
<a href="add-item.php?itemid='.$itemId.'" > Add Item </a>
Write
<a onclick="addItemToUsersList('.$itemId.')" > Add </a>
For AJAX, use jquery as Angelo has suggested. Download it and add the following
<script type="text/javascript" src="http://path/to/jquery-latest.min.js"></script>
<script type="text/javasript">
function addItemToUsersList(itemId)
{
$.ajax({
'url': 'path/to/add-item.php',
'type': 'GET',
'dataType': 'json',
'data': {itemid: itemId},
'success': function(data)
{
if(data.status)
{
if(data.added)
{
$("span#success"+itemId).attr("innerHTML","Item added to your personal list");
}
else
{
$("span#success"+itemId).attr("innerHTML","This item is already on your list");
}
}
},
'beforeSend': function()
{
$("span#success"+itemId).attr("innerHTML","Adding item to your bucketlist...");
},
'error': function(data)
{
// this is what happens if the request fails.
$("span#success"+itemId).attr("innerHTML","An error occureed");
}
});
}
</script>
And then finally, in your path/to/add-item.php
file write the code to add the items. The parameter itemId
will be available here as $_GET['itemId']
. Just return proper status values using json_encode.
if($bucketlist < 1)
{
mysql_query("INSERT INTO membersbuckets (memberbucketid, userid, bucketid, complete) VALUES ('', '$userid', '$_GET['itemId]', '0')");
return json_encode(array("status" => true, "added" => true));
}
else
{
return json_encode(array("status" => true, "added" => false));
}
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…