【问题标题】:Look for in Mysql table and pass information from the javascript在 Mysql 表中查找并从 javascript 传递信息
【发布时间】:2013-06-13 11:30:38
【问题描述】:

我的网络服务器有 PHP 和 MySQL。

一个数据库表有关于用户的信息。

使用我网站的用户想要接收一些信息。

所以他或她按下鼠标按钮并为该按钮发生单击事件并为表单提交事件。
我使用框架 jQuery 和我的 javascript(方法 .submit()) 我使用 AJAX 来检索必要的信息。

  1. 首先,我想知道表中是否存在用户。 我使用 ajax 和 php 文件 - first.php 收到此信息。

    • 如果表格中没有有关用户的信息,我会在脚本中报告这一点。
    • 如果有关用户的信息没有在表中,但类似用户存在,我会通知这种情况。
    • 如果表格中有关于用户的信息,我在脚本中调用命令:window.location.href = “second.php?param=2&user=userid”,我必须在表格中再次查找必要的信息并将其显示在网页中。
  2. 所以我的下一个问题是:如何避免在同一张表上重复查询?
    我必须在我的网页中显示大约 10 个帐户的记录。
    我想知道。如何将脚本中的信息(10 个帐户记录)传递到 second.php 文件中?
    我害怕在脚本中执行第二个命令$.ajax()。我觉得没必要。

【问题讨论】:

    标签: php javascript mysql search


    【解决方案1】:

    你现在所做的几乎是标准的。如果您不想使用此方法,那么我建议您查看会话。

    在您的第一页上,您需要包含以下行:

    <?php
    session_start();
    then your normal code.
    Once you have read the information from the database then place the values into session variables;
    $_SESSSION['var1'] = $result['id']; //--- continue for all the values you want to save
    

    在第二页你需要做相反的事情

    <?php
    session_start();
    $id = $_SESSION['var1'];
    

    【讨论】:

      【解决方案2】:

      您可以将查询结果写入半静态1 JavaScript sn-p:

      <?php 
      
      // do your query
      $result = ...;
      
      echo '<script type="text/javascript">'
          . 'var accountData = ' . parseForJavaScript($result) . ';'
          . '</script>';
      
      // do your other stuff
      

      然后你可以编写依赖于(不一定是全局的)变量accountData的代码:

      // JavaScript:
      doStuff(accountData);
      

      因为它本质上会扩展为(如果parseForJavaScript 返回 表示):

      <script type="text/javascript">
          var accountData = {users: {
              0 : { "name" : "John" },
              1 : { "name" : "Jack" },
              2 : { "name" : "James" }
          }};
      </script>
      

      当然,根据您的实际数据结构,JSON 对象的外观会有所不同。

      或者您可以跳过该变量并将数据直接作为函数参数注入:

      <?php 
      
      // do your query
      $result = ...;
      
      echo '<script type="text/javascript">'
          . 'doStuff(' . parseForJavaScript($result) . ');'
          . '</script>';
      
      // do your other stuff
      

      1半静态 因为它实际上是由 php 动态生成的,但在查看最终 HTML 时看起来是静态的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-09-18
        • 2013-12-05
        • 2016-01-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多