是否可以将列表项名称存储到可以在SQL查询中使用的变量中?

时间:2014-06-12 21:55:43

标签: php jquery html sql

我试图抓取用户点击的列表项中的文本,然后将其存储在变量中。然后我会将该变量用作sql查询中的搜索词。我想知道是否可以这样做。

我认为我已经编写了大部分代码,我对如何使所有文件协同工作感到困惑。

Jquery脚本,用于将类名更改为用户单击的任何文本:

$('li').click(function () {
    var name = $(this).text(); 
    var sqlname = name;
    $('#prf').attr("class",name);
    $('#pic').attr("class",name);
    $('#info').attr("class",name);

 });

PHP文档中的SQL代码,用于搜索MyPHPAdmin数据库中的任何值' stagename'等于。

<?php

$link = mysqli_connect("host", "username", "pass","db_name") or die ("Error ". mysqli_error($link));

$query = "SELECT realname
           FROM artistmaster
           WHERE stagename = '**jQuery variable here**'";

        $result = mysqli_query($link, $query)  or die(mysqli_error($link));         

        $row = mysqli_fetch_assoc($result);

        foreach($row as $key => $value) {
                        $$key = $value;
                        } ;
        echo $realname;
?>
编辑:我已经安装了MyPHPAdmin,并且已经创建了一个包含必要数据的数据库。 (每个艺术家的所有舞台名称和真实姓名)

因此,基本上用户点击具有音乐艺术家的舞台名称的列表项,然后舞台名称将通过sql查询运行,该查询返回音乐家的真实姓名。

我对编程很新,并且在过去一周内刚刚开始学习HTML,PHP和JQuery。话虽这么说,如果我以某种方式过度复杂,或者如果有人建议如何简单地这样做,那就太好了。

1 个答案:

答案 0 :(得分:0)

你之前尝试做过很多次,所以不要以为你不想重新发明轮子!一般的前提是这样的:

  • 用户点击按钮/链接/无论
  • jQuery使用GET或POST方法向PHP服务器发送AJAX请求。对于GET,参数在查询字符串中(例如?val1=1&val2=2)。对于POST,值将存储在消息正文中,由$.ajax字段在jQuery data中表示。
  • PHP页面将根据mysqli$_GET[]变量中的内容对$_POST[]数据库进行调用(取决于您是否使用了get或post)。这就是SQL注入预防(即参数化)非常重要的地方。
  • PHP页面返回结果,通常为JSON(javascript对象表示法),但技术上可以是您最终将使用JSON解释的任何内容
  • JSON调用会返回返回的结果并执行您需要的操作

那里涉及一些技术,但一般的想法是客户端(jQuery)无法直接与数据库通信,它必须通过服务器。使用AJAX可以实现“即时”操作。无需重新加载页面。

如果我在这篇文章中提到的任何内容都没有任何意义,我建议您花点时间阅读文档,教程和示例。有些人会说,这种类型的设置是当今世界网络开发的核心。理解它有点多,是的,但是一旦你做了网络编程就会更有意义。