我的网页有一个表格,您可以在其中选择不同的项目。我希望能够让人们评价这些。我遇到了一个问题,我需要将一个javascript变量传递给php,而从我在线阅读的内容来看,这不是最简单的。你会如何建议我这样做?我应该如何完成我的评级脚本
代码存储在98.214.131.200/index.php和98.214.131.200/ratings/ratings.php
目前我在ratings.php功能,让我写或读的收视率,但我需要javascript中的字符串来标识哪个项目正在被评级。
我的网页有一个表格,您可以在其中选择不同的项目。我希望能够让人们评价这些。我遇到了一个问题,我需要将一个javascript变量传递给php,而从我在线阅读的内容来看,这不是最简单的。你会如何建议我这样做?我应该如何完成我的评级脚本
代码存储在98.214.131.200/index.php和98.214.131.200/ratings/ratings.php
目前我在ratings.php功能,让我写或读的收视率,但我需要javascript中的字符串来标识哪个项目正在被评级。
您可以使用来自表单的POST请求传递评级。
http://www.tizag.com/phpT/forms.php/
确保正确净化你的投入,以避免SQL注入
http://www.tizag.com/mysqlTutorial/mysql-php-sql-injection.php
您可以尝试直接在URL中将该评级作为GET
变量传递。这样你就可以做./ratings.php?rating=5 & item = 20,并且在PHP中获取这些值为$_GET['rating']
和$_GET['item']
。
问题是我已经加载了PHP文件,如果只是做另一个PHP的地方变量可以通过这种方式,它只会让我打一次。 –
不一定。你可以将用户重定向到index.php,比他意识到他甚至离开页面更快。 –
,但用户添加到index.php地图上的内容将被重置,这不是有利的。 –
您可以使用jQuery,并通过幕后的信息。这样的事情:
$.ajax({
type: 'POST',
url: "/your/processing/url/here.php",
data: {rating_id: item_id, rating: 4}, // <-- set this dynamically with your item
success: function()
{
// do something - success
},
dataType: dataType
});
是的,这将是最好的办法。我的印象是OP对jQuery甚至Javascript没有多少经验。因此,添加到这个,你需要下载jQuery库并包含链接到你的网页使用它。 –
这是我编写过的第一个网站,所以我对任何东西都不是很有经验,这种方式是否允许多个提交?我不打算将用户发送到新页面。 –
是的,提交会在不离开页面的情况下完成,您可以将它们绑定到按钮单击事件。如果这是您第一次使用Web开发工作,那么您可能会遇到一些困难,因此如果您打算这样做,请仔细阅读jQuery.com上的文档。除此之外,我认为快速解决方案就是在您的ratings.php文件中添加一行,例如“redirect('./ index.php');”,这会将用户带回投票页面。由于它是一个PHP重定向,它会在没有用户注意的情况下发生。这不像一个JavaScript重定向。 –
你是基于数据库填充表(SQL我猜)? – justderb
不,它只是用javascript编写的。如果你打开index.php,你可以看到整个表格。 –
Javascript是客户端。你如何存储收视率?使用Javascript,它存储在客户端浏览器中,但一旦它们重新加载它就消失了。 – justderb