Вставить несколько идентификаторов в запрос MySQL?
Я пытаюсь сделать функцию "нравится / не нравится" для веб-сайта. Я сделал один рабочий, который связан с таблицей базы данных под названием "сообщения".
В таблице 'posts' есть 4 столбца с именами id, name, like, в отличие.
Моя проблема в том, что теперь я хочу использовать тот же код, но использовать его в другой таблице, называемой "место проведения". Эта таблица имеет те же 4 столбца, но они называются vID, Location, как, в отличие от. И таблица 'место встречи' имеет несколько идентификаторов VID вместо одного идентификатора, такого как таблица 'posts'.
Не можете понять, что делать?
<html>
<head>
<script src = "http://code.jquery.com/jquery-1.3.2.min.js"></script>
<script>
function doAction(postid,type){
$.post('doAjax.php',{postid:postid, type:type}, function(data){
//if(isNaN(parseFloat(data))){
//alert(data);
//}else{
$('#'+postid+'_'+type+'s').text(data);
});
}
//}
</script>
</head>
<body>
<?php
include('db.php'); // including database connection
$postid= 1;
$data = mysql_fetch_object(mysql_query('SELECT `like`, `unlike` from posts WHERE id ="'.$postid.'"'));
?>
<a href="javascript:;" onclick="doAction('<?php echo $postid;?>','like');">Like (<span id="<?php echo $postid;?>_likes"><?php echo $data->like;?></span>)</a>
<a href="javascript:;" onclick="doAction('<?php echo $postid;?>','unlike');">Unlike (<span id="<?php echo $postid;?>_unlikes"><?php echo $data->unlike;?></span>)</a>
</body>
<?php
include('db.php');
if($_POST['postid'] !='' && $_POST['type'] != ''){
if($_POST['type']=='like'){
mysql_query(' UPDATE posts SET `like`=`like`+1 WHERE id="'.(int)$_POST['postid'].'"');
$num = mysql_fetch_row(mysql_query(' SELECT `like` FROM posts WHERE id="'.(int)$_POST['postid'].'" LIMIT 1'));
}elseif($_POST['type']=='unlike'){
mysql_query(' UPDATE posts SET `unlike`=`unlike`+1 WHERE id="'.(int)$_POST['postid'].'"');
$num = mysql_fetch_row(mysql_query(' SELECT `unlike` FROM posts WHERE id="'.(int)$_POST['postid'].'" LIMIT 1'));
}
echo $num[0];
(int)$_POST['postid'].'","'.$_SERVER['REMOTE_ADDR'].'")');
}
?>
1 ответ
Я не уверен, что понимаю вашу проблему. Если это генерировать кнопки из данных в таблице "место проведения", вы можете попробовать что-то вроде этого:
<?php
$query = "SELECT * from venue";
if ($result = $mysqli->query($query)) {
while ($obj = $result->fetch_object()) {
?>
<a href="javascript:;" onclick="doAction('<?php echo $obj->id;?>','like');">Like (<span id="<?php echo $obj->id;?>_likes"><?php echo $obj->like;?></span>)</a>
<a href="javascript:;" onclick="doAction('<?php echo $obj->id;?>','unlike');">Unlike (<span id="<?php echo $obj->id;?>_unlikes"><?php echo $obj->unlike;?></span>)</a>
<?php
}
$result->close();
}
?>
а также mysql_fetch_object
устарела, вы должны использовать mysqli_fetch_object
( http://php.net/manual/en/function.mysql-fetch-object.php)