php wordpress-从mysql表中逐个检索值

php wordpress-从mysql表中逐个检索值,php,mysql,wordpress,algorithm,Php,Mysql,Wordpress,Algorithm,我一直在尝试从我刚刚创建的mysql表中逐个检索数据。下图显示了包含示例优惠券代码的表格和一个名为test的字段,用于指定代码是否由用户生成 我的目标是检索阿迪达斯下面的优惠券代码,顺序为arda10、arda11、arda12,。。。显示优惠券代码后,更新测试列中优惠券的状态。 如果测试列中的状态为1,则不应向用户显示代码。只能打印状态为0的代码 $kupon = $wpdb->get_results( 'SELECT * FROM `wp_kuponlar`', ARRAY_A); e

我一直在尝试从我刚刚创建的mysql表中逐个检索数据。下图显示了包含示例优惠券代码的表格和一个名为test的字段,用于指定代码是否由用户生成

我的目标是检索阿迪达斯下面的优惠券代码,顺序为arda10、arda11、arda12,。。。显示优惠券代码后,更新测试列中优惠券的状态。 如果测试列中的状态为1,则不应向用户显示代码。只能打印状态为0的代码

$kupon = $wpdb->get_results( 'SELECT * FROM `wp_kuponlar`', ARRAY_A);
echo $kupon[adidas];
救命啊


我不知道你的问题是什么,错误可能是什么,但这是一个更好的格式和方式,请确保你阿迪达斯是像下面的例子一样被问到

 $kupon = $wpdb->get_results( 'SELECT * FROM wp_kuponlar', ARRAY_A);
     foreach($kupon as $coupon){
        echo $coupon['adidas'];
    }
额外小费 如果表格附在wordpress db上,而不是一个完全不同的db,那么更好的方法是执行以下操作

 $kupon = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}_kuponlar", ARRAY_A);
根据评论


从wp数据库表中获取结果使用$wpdb->Get_results查询如下内容

它为您提供测试状态为0或1的所有数据

 <?php

    global $wpdb;
    $kupon = $wpdb->get_results(
            $wpdb->prepare(
                    'SELECT * FROM wp_kuponlar'
            ), ARRAY_A
    );
    foreach ($kupon as $coupon) {
        echo $coupon['adidas'];
    }
但是,如果您只想筛选0的值,则将查询更改为

<?php

global $wpdb;
$kupon = $wpdb->get_results(
        $wpdb->prepare(
                'SELECT * FROM wp_kuponlar WHERE test = %d', 0
        ), ARRAY_A
);
foreach ($kupon as $coupon) {
    echo $coupon['adidas'];
}
以测试状态非1的优惠券升序查找结果数据集

 <?php

global $wpdb;
$kupon = $wpdb->get_results(
        $wpdb->prepare(
                'SELECT * FROM wp_kuponlar WHERE test != 1 ORDER BY RIGHT(adidas,3)'
        ), ARRAY_A
);
// Now the resultset will be in order of ids
foreach ($kupon as $coupon) {
    echo $coupon['adidas'];
}

有什么错误吗?嗨,桑杰。谢谢你的回答。我明白了如何利用它来提升地位。但我有两个问题:1。ARDA11 ARDA13 ARDA16 ARDA17 ARDA18 ARDA19 ARDA20 ARDA3 ARDA4 ARDA5 ARDA6 ARDA8 ARDA8 ARDA12。我一直在一个接一个地把表中的值显示出来。让我来帮你@ArdaUlusoy,请让我把你的评论说清楚,就像“如果测试列中的状态是1,代码不应该显示给用户。”。只能打印状态为0的代码。“这是什么意思?当然可以。”。我刚刚编辑了mysql表wp_kuponlar。如图所示:我想要的是:1。按代码ID的递增顺序显示代码。2.更新每个优惠券的状态字段,如果状态为1,则不显示状态。更新wp_kuponlar SET status='1',其中adidas='arda12'now@ArdaUlusoy,我又添加了一个脚本,按照优惠券的顺序给出结果。我刚刚编辑了mysql表wp_kuponlar。请看这里的图片:ibb.co/ckpBRb我想要的是:1。按代码ID的递增顺序显示代码。2.更新每个优惠券的状态字段,如果状态为1,则不显示状态。更新wp_kuponlar SET status='1',其中阿迪达斯='arda12'Hi@ArdaUlusoy您的问题不太清楚,但我将更新我之前的答案,根据我对您问题的一点理解。请尝试更好地解释,尤其是更新方面。嗨@Ezekiel,谢谢你的努力。我有一个用WP创建的优惠券代码网站。我正在为我的会员创建交易,每笔交易中都有不同数量的独特代码。我正在上传代码到wp_kuponlar表,每个代码的id递增顺序为1、2、3,。。。和状态1或0;1表示未使用,0表示表中已使用的值。我的目标是在用户每次试图查看代码时检索一个唯一且未使用的代码。所以,第一个用户生成的代码将看到表中的第一个代码,第二个用户将看到第二个,第三个用户将看到第三个。如果代码的状态为0,则不应检索该代码。嗨@ArdaUlusoy,我已更改了检索所有非0代码的记录,但您可以在代码中轻松地在0和1之间进行交换。所以,它将以非0的数量递增的方式检索代码,也就是说,它将只显示状态为1的代码
 <?php

global $wpdb;
$kupon = $wpdb->get_results(
        $wpdb->prepare(
                'SELECT * FROM wp_kuponlar WHERE test != 1 ORDER BY RIGHT(adidas,3)'
        ), ARRAY_A
);
// Now the resultset will be in order of ids
foreach ($kupon as $coupon) {
    echo $coupon['adidas'];
}