GVKun编程网logo

如何使用 PHP 中的 AJAX 从 MYSQL 中获取数据(php读取mysql)

1

本文将介绍如何使用PHP中的AJAX从MYSQL中获取数据的详细情况,特别是关于php读取mysql的相关信息。我们将通过案例分析、数据研究等多种方式,帮助您更全面地了解这个主题,同时也将涉及一些关于

本文将介绍如何使用 PHP 中的 AJAX 从 MYSQL 中获取数据的详细情况,特别是关于php读取mysql的相关信息。我们将通过案例分析、数据研究等多种方式,帮助您更全面地了解这个主题,同时也将涉及一些关于ajax 从自定义表格 Wordpress 中获取数据、Ajax 和 XML: 将 Ajax 用于聊天-使用 Ajax 和 PHP 创建聊天应用程序、ApolloProvider useQuery 组合不会从 AWS AppSync 中获取数据,在 React 项目中 顶级代码子组件中的代码useQuery的使用、Flutter 从 Api 中获取数据的知识。

本文目录一览:

如何使用 PHP 中的 AJAX 从 MYSQL 中获取数据(php读取mysql)

如何使用 PHP 中的 AJAX 从 MYSQL 中获取数据(php读取mysql)

如何解决如何使用 PHP 中的 AJAX 从 MYSQL 中获取数据

我想使用ajax从数据库中调用我的数组数据。但我不认识路。我在 ajax 调用中感到困惑以将其显示到文本字段中。如何从我的 sql 查询中获取数组数据

这个 index.PHP 看起来像..

  1. <body>
  2. <div class="container" >
  3. <h2>View data</h2>
  4. <h4>Word List : </h4>
  5. <div class="form-group">
  6. <input id="wordlist" type="text" class="form-control" name="wordlist">
  7. </div><br>
  8. <button id="display" title="Generate Word">Generate</button>
  9. <div class="input-single">
  10. </div>
  11. <script type="text/javascript">
  12. $(document).ready(function() {
  13. $("#display").click(function() {
  14. $.ajax({
  15. type: "POST",url: "getword.PHP",dataType: "json",cache: false,success: function(result){
  16. $(''#wordlist'').html(result[0]);
  17. }
  18. });
  19. });
  20. });
  21. </script>
  22. </body>

然后这是 url getword.PHP 看起来像

  1. <?PHP
  2. $host = "localhost";
  3. $user = "root";
  4. $password = "";
  5. $dbname = "wordlist";
  6. $con = MysqLi_connect($host,$user,$password,$dbname);
  7. if (!$con) {
  8. die("Connection Failed: " . MysqLi_connect_error());
  9. }
  10. $sql = "select kata from word";
  11. $res = MysqLi_query($con,$sql);
  12. $result = array();
  13. while($row = MysqLi_fetch_array($res)){
  14. $result[]= $row[0];
  15. }
  16. echo json_encode(array(''kata''=>$result));
  17. MysqLi_close($con);
  18. ?>

解决方法

int add(node_t* n,node_t** tn){ if(*tn == NULL){*tn = n; return 1;} if(n->value < (*tn)->value){add(n,&((*tn)->leftNode));} else if (n->value > (*tn)->value){add(n,&((*tn)->rightNode));} else{return 0;} } 是一个输入,你从 API 传回的是一个对象

  1. id="wordlist"

所以 { kata: [...] } 不起作用,您需要使用 $(''#wordlist'').html(result[0]);(注意:val 不是 html)作为第一项,否则它将加入值 word1、word2、word3 等>

如果您不打算将所有单词放在一个输入中,那么您应该更改它,使其循环 $(''#wordlist'').val(result.kata[0]); 并为每个单词等创建一个输入

,
  1. I would like to suggest you to debug your code by yourself using following steps :
  2. 1.You can check what response you are getting from server side by printing your ajax response data at console to print this use below code.
  3. success: function(result){
  4. console.log(result);
  5. // $(''#wordlist'').html(result[0]);
  6. }
  7. This will print that you are receiving data from server side.
  8. 2.Another point is you are handling the response inside an input field if want to print fetch data inside input field then you have to replace $(''#wordlist'').html(result[0]); from $(''#wordlist'').val(result[0]); this line from your JavaScript code because it is an input field.

ajax 从自定义表格 Wordpress 中获取数据

ajax 从自定义表格 Wordpress 中获取数据

如何解决ajax 从自定义表格 Wordpress 中获取数据

我正在尝试学习如何通过 wordpress ajax 从自定义数据库表中获取内容,但不知道该怎么做。

文件名:process-order.PHP

   add_action( ''wp_ajax_get_drawing_size'',''get_drawing_size'' );
   add_action( ''wp_ajax_nopriv_get_drawing_size'',''get_drawing_size'' );
   function get_drawing_size() {

    global $wpdb;
    $drawing_id = $_POST[''drawing_id''];
    $relation_result = $wpdb->get_results( "SELECT size.* FROM 
   `www_order_pro_relation` as relation RIGHT JOIN `www_order_pro_size` as 
    size on size.`id`=relation.`size_id` WHERE relation.`drawing_id` = 
 $drawing_id ");
    wp_send_json_success( array(
            ''count'' => $relation_result
        ));
     //$data = array( ''returnValue'' => $relation_result);
    // echo "<pre>";
    // print_r($relation_result);
    // echo "</pre>";
            die();
            // return true;
// die("I am calling");
}

AJAX 代码文件 -> size.PHP

<a href="#" onclick="call_ajax()">Click me</a>
<script type="text/javascript">
  function call_ajax(){
        jQuery.ajax({
        url : order_process_ajax_object.ajax_url,data : {action: "get_drawing_size","drawing_id":"drawing_id"},method: ''POST'',success: function( data ) 
         {
          
        }
    }); 
}

我想要这里的结果

<div>
                    <div>
                        <h3> Size </h3>
                    </div>
                         
                                <div>
                                    
                                            <p> <?PHP //echo $print->title; ?></p>
                                            <h4> <?PHP //echo $curency ?> <?PHP //echo $print->price; ?> </h4>
                                            <div id="responsecontainer" align="center">
                                                **HERE**
                                            </div>
                                        
                                </div>

                    
                </div>

任何人请帮助我

解决方法

您必须将回调函数与用于 ajax 调用的钩子绑定。

代替这个代码

function order_process_ajax() {

   add_action( ''wp_ajax_get_drawing_size'',''get_drawing_size'' );
   add_action( ''wp_ajax_nopriv_get_drawing_size'',''get_drawing_size'' );
   function get_drawing_size() {

    global $wpdb;
    $drawing_id = $_POST[''drawing_id''];
    $relation_result = $wpdb->get_results( "SELECT size.* FROM 
   `www_order_pro_relation` as relation RIGHT JOIN `www_order_pro_size` as 
    size on size.`id`=relation.`size_id` WHERE relation.`drawing_id` = 
 $drawing_id ");
    wp_send_json_success( array(
            ''count'' => $relation_result
        ));
     //$data = array( ''returnValue'' => $relation_result);
    // echo "<pre>";
    // print_r($relation_result);
    // echo "</pre>";
            die();
            // return true;
// die("I am calling");
}

替换此代码并将其放入活动主题的functions.php文件中

add_action( ''wp_ajax_get_drawing_size'',''get_drawing_size'' );
add_action( ''wp_ajax_nopriv_get_drawing_size'',''get_drawing_size'' );
function get_drawing_size() {
    global $wpdb;
    $drawing_id = $_POST[''drawing_id''];
    $relation_result = $wpdb->get_results( "SELECT size.* FROM 
   `www_order_pro_relation` as relation RIGHT JOIN `www_order_pro_size` as 
    size on size.`id`=relation.`size_id` WHERE relation.`drawing_id` = 
 $drawing_id ");
    wp_send_json_success( array(
            ''count'' => $relation_result
        ));
     //$data = array( ''returnValue'' => $relation_result);
    // echo "<pre>";
    // print_r($relation_result);
    // echo "</pre>";
            die();
            // return true;
// die("I am calling");
}

流程是这样的: 当您单击按钮时,ajax 调用将触发 action: "get_drawing_size","drawing_id":"drawing_id" 数据。这里行动很重要。

WordPress 将检查与 action 名称相关联的钩子。在您的情况下,它将检查登录用户的钩子 wp_ajax_get_drawing_size 和未登录用户的 wp_ajax_nopriv_get_drawing_size

您的代码中未提及上述钩子。 所以请添加那些钩子并链接回调函数。我附上了上面的代码。

Ajax 和 XML: 将 Ajax 用于聊天-使用 Ajax 和 PHP 创建聊天应用程序

Ajax 和 XML: 将 Ajax 用于聊天-使用 Ajax 和 PHP 创建聊天应用程序

<script>ec(2);</script>
了解如何使用 Asynchronous JavaScript™ + XML (Ajax) 和 PHP 在 Web 应用程序中建立聊天系统。您的客户不需要下载或安装任何专门的即时消息通讯软件,就能和您及其他客户讨论网站的内容。

web 2.0 一词出现以来,开发人员都在说社区。不论您是否认为这有点夸大其辞,但让用户或读者能够方便地实时讨论页面主题或者销售的产品,这一想法还是很吸引人的。但是怎么办呢?能否在推销产品的页面中加入聊天,而不必让客户安装任何特殊的软件包括 adobe flash player 呢?当然!实践证明,用免费的现成工具如 php、mysql、动态 html (dhtml)、ajax 和 prototype.js 库就能完全做到。

不再罗嗦了,让我们立即开始吧。 


本文转自:IBM developerWorks 中国
请点击此处查看全文

ApolloProvider useQuery 组合不会从 AWS AppSync 中获取数据,在 React 项目中 顶级代码子组件中的代码useQuery的使用

ApolloProvider useQuery 组合不会从 AWS AppSync 中获取数据,在 React 项目中 顶级代码子组件中的代码useQuery的使用

如何解决ApolloProvider useQuery 组合不会从 AWS AppSync 中获取数据,在 React 项目中 顶级代码子组件中的代码useQuery的使用

情况

由于兼容问题,我使用 ApolloClient 来形成我的 AWS AppSync API 客户端,以便我可以使用 ApolloProvider 将客户端传递给不同的子组件。

在子组件中,我调用 useQuery 来获取数据,但问题是输出总是给我默认的“未定义”值。

顶级代码

  1. import awsconfig from ''../aws-exports'';
  2. import { AUTH_TYPE } from ''aws-appsync'';
  3. import {
  4. ApolloProvider,ApolloClient,ApolloLink,HttpLink,InMemoryCache,} from "@apollo/client";
  5. import { createAuthLink } from "aws-appsync-auth-link";
  6. import { getUserDb,listUserDbs } from ''../graphql/queries'';
  7. const link = ApolloLink.from([
  8. createAuthLink({
  9. url: awsconfig.aws_appsync_graphqlEndpoint,region: awsconfig.aws_appsync_region,auth: {
  10. type: AUTH_TYPE.API_KEY,apiKey: awsconfig.aws_appsync_apiKey,},}),new HttpLink({ uri: awsconfig.aws_appsync_graphqlEndpoint }),]);
  11. const client = new ApolloClient({
  12. link,cache: new InMemoryCache(),credentials: ''include''
  13. });
  14. function WithProvider (){
  15. return (
  16. <ApolloProvider client={client}>
  17. <App />
  18. </ApolloProvider>
  19. )
  20. }
  21. export default WithProvider;

子组件中的代码(useQuery的使用)

  1. import { listUserDbs } from ''../graphql/queries'';
  2. const GET_USER_PROFILE = gql(listUserDbs)
  3. function App() {
  4. const { loading,error,out_data,client } = useQuery(GET_USER_PROFILE);
  5. if (loading) return <p>Loading...</p>;
  6. if (error) return <p>Error :(</p>;

我做了什么测试?

  1. 当我直接从客户端调用查询时,它起作用了
  1. client
  2. .query({
  3. query: gql`
  4. query ListUserDbs(
  5. $filter: Table
  6. ) {
  7. listUserDBS(filter: $filter) {
  8. items {
  9. sub
  10. }
  11. nextToken
  12. }
  13. }
  14. `
  15. })
  16. .then(result => console.log(result));
  1. 当我要求 useQuery 返回客户端时,它返回我设置的相同客户端
  1. const { loading,client } = useQuery(LIST_USER_PROFILE);

我对问题的猜测

问题可能来自 useQuery,但我不知道如何解决。

Flutter 从 Api 中获取数据

Flutter 从 Api 中获取数据

如何解决Flutter 从 Api 中获取数据

我正在尝试从 Api 获取数据,但出现以下错误:

未处理的异常:类型 ''_InternalLinkedHashMap '' 不是类型 ''List'' 的子类型

我从具有不同 Api 的视频中复制了代码,并且在那里工作正常。所以我猜这是定义的 API (https://api.radioking.io/widget/radio/leipzig-beatz/track/current) 的问题。

看起来错误发生在这一行:

                 setState(() {
                   users = items;
                 isLoading = false;
                });

这是代码:

      List users = [];
      bool isLoading = false;
      @override
      void initState() {
        // Todo: implement initState
        super.initState();
        this.fetchUser();
      }

      fetchUser() async {
        setState(() {
          isLoading = true;
        });
        var url =
            "https://api.radioking.io/widget/radio/leipzig-beatz/track/current";
        var response = await http.get(url);
        // print(response.body);
        if (response.statusCode == 200) {
          var items = json.decode(response.body);
          setState(() {
            users = items;
            isLoading = false;
          });
        } else {
          users = [];
          isLoading = false;
        }
      }

      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text("Listing Users"),),body: getBody(),);
      }

      Widget getBody() {
        if (users.contains(null) || users.length < 0 || isLoading) {
          return Center(child: CircularProgressIndicator());
        }
        return ListView.builder(
            itemCount: users.length,itemBuilder: (context,index) {
              return getCard(users[index]);
            });
      }

      Widget getCard(item) {
        var title = item[''title''];
        return Card(
          elevation: 1.5,child: Padding(
            padding: const EdgeInsets.all(10.0),child: ListTile(
              title: Row(
                children: <Widget>[
                  SizedBox(
                    width: 20,Column(
                    crossAxisAlignment: CrossAxisAlignment.start,children: <Widget>[
                      SizedBox(
                          width: MediaQuery.of(context).size.width - 140,child: Text(
                            title,style: TextStyle(fontSize: 17),)),SizedBox(
                        height: 10,],)
                ],);
      }

解决方法

List users = []; 更改为 Map<String,String> user = {} 然后通过调用 var title = user[''title''];

获取标题 ,

来自您的 api 的响应是这样的

{"artist":"PHILBEAT","title":"BRINGING THE FUTURE","album":null,"started_at":"2021-03-31T15:02:27+0000","end_at":"2021-03-31T16:02:20+0000","next_track":"2021-03-31T16:02:21+0000","duration":3592.21,"buy_link":null,"is_live":false,"cover":"https://image.radioking.io/radios/336664/cover/custom/98df4bc3-9dca-4e17-b1c5-35e3116800e8.jpeg","default_cover":false,"forced_title":false}


这是一个 json 响应。 您正在使用 dart::convert 库的 json.decode 函数来转换返回 Map 类型映射的 json 响应。

var items=json.decode(response.body)

items 是 Map ,您将其分配给 List users 类型。因此,您首先需要将用户类型更改为 Map

,

由于 var items = json.decode(response.body); 与 API 响应一起返回 Map,因此您无法将其分配给 users 变量,该变量是 List

将您的变量类型更改为:

Map<String,dynamic> users = {};

今天的关于如何使用 PHP 中的 AJAX 从 MYSQL 中获取数据php读取mysql的分享已经结束,谢谢您的关注,如果想了解更多关于ajax 从自定义表格 Wordpress 中获取数据、Ajax 和 XML: 将 Ajax 用于聊天-使用 Ajax 和 PHP 创建聊天应用程序、ApolloProvider useQuery 组合不会从 AWS AppSync 中获取数据,在 React 项目中 顶级代码子组件中的代码useQuery的使用、Flutter 从 Api 中获取数据的相关知识,请在本站进行查询。

本文标签: