数据库无法处理Wordpress主题的根目录

时间:2016-04-07 08:32:32

标签: mysql database wordpress

我在wordpress数据库上创建了自己的表格并创建了过滤搜索表单。现在,我的问题是,我不知道如何将我的数据库连接到wordpress中的搜索过滤器表单。

这是一个过程,我将关键字从index.php发送到result.php,它没有显示任何内容,只是一个空白页面。

这是我的代码:

<?php
define('WP_USE_THEMES', false);
global $wpdb;
$destination = $_POST["destination"];

echo "Welcome test" . $destination;

$sql = "SELECT * FROM rates WHERE location = '" . $destination ."';";

echo $sql;
echo "search this";

foreach ( $wpdb->get_results($sql) as $result ) { 
 echo "search for". $result->location;
}                                  
?>

3 个答案:

答案 0 :(得分:1)

wp-content / themes / Your-Theme-Name / result.php

<?php
    /*
     * Template Name: MyResultPage
    */

        /* You can also use require_once('wp-load.php'); */
        get_header(); 

        global $wpdb;
        $destination = $_POST["destination"];
        $table = $wpdb->prefix . "rates";
        $sql = "SELECT * FROM `". $table . "` WHERE location = '". $destination. "'" ; 

        $result = $wpdb->get_results($sql);

        foreach($result as $res) {
           echo "search for". $res->location;
        }

    ?>

然后,在wordpress管理员中创建一个新页面,并将模板设置为result.php模板名称:MyResultPage(例如)。

enter image description here

答案 1 :(得分:0)

你应该在文件的标题中包含wp-config.php文件,该文件将包含你页面中的所有相关文件。

答案 2 :(得分:0)

你可以检查下面的代码然后输出。

我在WordPress的根目录中添加了一个页面并创建了一个页面并添加了此代码。

<强> test.php的

<?php 
     define('WP_USE_THEMES', false);  
     require_once('wp-load.php');
     global $wpdb;
     $result = $wpdb->get_results(("SELECT * FROM {$wpdb->prefix}posts WHERE post_type = 'page'"), ARRAY_A);

     foreach( $result as $key => $val )
     {
        echo '<p>Title - '.$val['post_name'].'</p>';
        echo '<p>ID - '.$val['ID'].'</p>';
     }
?>

现在这里是这个页面的显示所有页面标题和ID。

<强>输出:

<p>Title - sample-page</p>
<p>ID - 2</p>
<p>Title - sample-page1</p>
<p>ID - 3</p>