我需要在列liked_comments
中插入注释ID列表。
例如,如果用户喜欢ID为72
,839
,37
的评论,则会将其存储在那里。
$id = mysqli_real_escape_string($conn,$_POST['id']); // a number posted using ajax from another file
$username = mysqli_real_escape_string($conn,$_SESSION['username']);
if (!empty($_POST) && isset($_SESSION['username'])){
mysqli_query($conn,"UPDATE users SET liked_comments=liked_comments+$id WHERE username='$username'");
}
目前,这只是添加ID,好像它们是数字而不是字符串,但我需要将71,789,173
或71 789 173
分隔为空格或逗号。添加+' '+
或+','+
似乎无效。
答案 0 :(得分:2)
你不能在mysql中使用$url = 'http://...'
$ie = New-Object -COM 'InternetExplorer.Application'
$ie.Navigate($url)
do { Start-Sleep -Milliseconds 100 } until ($ie.ReadyState -eq 4)
$ie.Visible = $true
$el = $ie.Document.getElementById('txtFormID')
$el.FireEvent('onKeyUp')
进行连接,你必须使用concat之类的
+
此外,您可以将注释部分移动到分隔的表中,而不是在列中存储逗号分隔值,其中每行包含$Query = "UPDATE users SET liked_comments=concat(liked_comments, ',', '$id') WHERE username='$username'";
和PostID
,这将更加整洁和灵活。
答案 1 :(得分:0)
执行此操作的最佳方法是将数组存储在数据库中。例如;如果我们有这个数组:
$liked_comments_array = array(71, 789, 173);
您可以将其存储在数组中,如下所示:
$liked_comments_array = serialize($liked_comments_array);
// now insert this into the database
然后,当您从数据库中获取此数组时,只需将其反序列化为:
$liked_array_comments = unserialize($field_from_database);