无法使用wordpress插件从mysql获取数据

时间:2014-12-09 10:22:07

标签: php mysql wordpress

我创建了一个WP插件,它是一个用户可以提交一些数据的表单。 我们先来看看代码

<?php
/*
Plugin Name: My Plugin
Description: test plugin
Version: 4.0
Author: Hercal
License: GPL
*/
include('db.php'); //database connection file located in same folder .
?>

<?php function form_creation(){?> 
<form action=" <?php get_permalink(); ?> " method="post" id="myform">
<table>

<tr>
<td><input type="text" id="txtname" name="txtname" placeholder="Your Name"/> </td>
</tr>

<tr>
<td>
<select id='select_Country' name="select_Country" >
        <option selected="selected" disabled="disabled"> -- Select Country -- </option>
        <?php
        include(db.php);
        $query="select Code,Country from _Country order by Country";
        $result=mysqli_query($con,$query);
        while($row=mysqli_fetch_array($result))
        {
            echo '<option value='.$row["Code"].'>'.$row["Country"].'</option>';
        }
        ?>
</select> 

</td>
</tr>
<tr>
<td>  <input type="submit" id="btnsubmit" value="Submit" name='submit'/> </td>
</tr>
</table>
</form>
<?php }?>

<?php
include(db.php);
if($_POST['submit'])
{
    $name=strip_tags($_POST['txtname']);
    $country=$_POST['select_Country'];
$insertquery="insert into _customers(Name,Country)values('$name',(select Country from _country where Code = '$country')";
    $query=mysqli_query($con,$insertquery);
    if($query)
    {
        echo 'Data inserted successfully';
    }
    else
    {
        echo 'there is a problem<br/>';
        print_r( (mysqli_errno($con)));
    }
}
?>
<?php add_shortcode('test', 'form_creation');?>

现在,当我使用[test]短代码并将其放在我的wordpress页面上,表单已加载,显示但有一个问题。

1-Country字段没有从数据库加载,因此只有一个选项的下拉加载 ,选择国家

请记住: 1 - 当我输入名称并按提交时,名称已成功插入数据库,这意味着db.php没有问题,所以为什么选择国家/地区查询没有返回值。

2 - 当我在root上运行相同的代码(没有WP)时,它运行正常并且国家加载成功但是当我使用ShortCode从WordPress调用此插件时,会出现问题

我需要你的支持,谢谢。

0 个答案:

没有答案