如何使用PHP和AJAX更新MySQL,而无需刷新页面
How to Update MySQL with PHP and AJAX without REFRESHING the PAGE
好的,这是我的问题
我有以下顺序的MySQL:
IDS - 收音机 - 链接 - 时间 - 艺术家 - 标题 - 不喜欢
ids 是媒体的 ID
从页面收听.php我从数据库中随机选择视频。
我已经在 列出.php 中创建了 显示视频的 ID 以及艺术家和标题。
**我需要在LISTEN上有一个按钮.php当有人点击它时,例如按钮的名称 ->
不喜欢因此,如果有人单击它 AJAX 或以某种方式不刷新页面,而是在单击 DISLIKE 按钮以在 MySQL 中更新(再次不刷新页面)到 Dislike - 1,(当再次按下此按钮以使同一视频更新到 2/3/4 依此类推。现在我所有的视频都是0。
例如,我需要能够观看不喜欢的视频
从随机中选择 *,其中不喜欢是较高的数字,然后是>0**
我不是很擅长PHP,所以请帮助我,再一次页面不应该刷新。
您的帮助将不胜感激。
jQuery 中的 Ajax 工作原理如下:
var myData=1;
$.ajax({
type:'POST',//type of ajax
url:'mypage.php',//where the request is going
data:myData,//the variable you want to send
beforeSend:function(xhr){//as a standard, I add this to validate stuff
if(someThingWrong===true)xhr.abort//aborts xhttpRequest
},
success:function(result){
//result is your result from the xhttpRequest.
}
});
这不会刷新您的页面,而是向指定的网址发送"POST"。在指定的页面上,您想做任何您想做的事情,并说返回结果。在我的示例中,我将做一些简单的事情:
if($_POST['myData']===1)return True;
这是使用 jQuery 的 AJAX 请求的基础知识。
编辑!
启动 AJAX 脚本:我只是猜测,因为我不知道你的 html 中的元素,也不知道你的脚本!所以你必须做出调整!
$('button.dislike').click(function(){
$.ajax({
type:'POST',
url:'disliked.php',
data:{dislike:$(this).attr('id')},
success:function(result){
$(this).prev('span').append(result);
}
});
});
.PHP:不要使用 MySQL,它现在已经贬值并且被认为是不好的做法,我也不知道为什么在查询中使用 sprintf?:S
$DBH=new mysqli('location','username','password','database');
$get=$DBH->prepare("SELECT dislike FROM random WHERE ids=?");
$get->bind_param('i',$_POST['dislike']);
$get->execute();
$get->bind_result($count);
$get->close();
$update=$DBH->prepare('UPDATE random SET dislike=? WHERE ids=?');
$update->bind_param('ii',++$count,$_POST['dislike']);//if you get an error here, reverse the operator to $count++.
$update->execute();
$update->close();
return String $count++;
仅当 HTML 中有一系列 ID 与数据库中的按钮匹配时,这才有效。所以
$get=$DBH->prepare('SELECT ids FROM random');
$get->execute();
$get->bind_result($ids);
while($get->fetch()){
echo"<button class='dislike' id='".$ids."'>Dislike this?</button>";
}
希望您大致了解我如何管理您不喜欢的按钮系统XD 哈哈
相关文章:
- 从MySQL数据库中获取输入数据需要两次页面刷新
- 如何在不刷新页面和不单击“发送”按钮的情况下从下拉选择中向 MYSQL 发送值
- 使用下拉列表中的值查询 MySQL 数据库,然后使用结果填充文本字段而不刷新页面
- 如何使用PHP和AJAX更新MySQL,而无需刷新页面
- 刷新 MySQL 驱动的下拉列表的内容,而无需刷新页面
- 如何在不刷新页面的情况下从数据库(mysql)加载更新的数据
- 来自 MySQL 数据库的翻转时钟时间值,刷新时不会重置
- 在跨度单击时 - 通过页面刷新将行插入 MySQL
- 如果网站刷新,则阻止 php 调用的 mysql 服务器运行
- 在执行mysql查询后刷新图表(javascript)
- 在不刷新的情况下更新PHP上的MySQL变量
- 从mysql中分页数据表,自动刷新
- 如何在不刷新页面的情况下创建表单,同时数据进入mysql数据库
- 如何在不刷新页面的情况下将我的数据保存到Mysql
- 自动刷新在新的mysql条目
- 在不刷新mysql数据库的情况下更改图像src
- 当用户点击刷新按钮时,删除mysql表中的数据
- 加载图表连接到mysql没有刷新页面使用php和javascript
- Php mysql只返回最后一行,当我使用自动刷新
- 如何在不刷新页面的情况下刷新MySQL查询的结果?