2014-10-17 118 views
0

我一直在想出一些方法来获取我在wordpress页面中制作的html表单,以便输入信息并将其发送到wordpress数据库中的自定义表格。我已经尝试调用一个自定义的PHP脚本,并在页面本身编写代码,我不知道如何让它工作。我疯了试图弄清楚这一点,我即将放弃。从哪里开始寻找任何建议,足够我一直在寻找一个星期,会很好。我已经尝试使用mysqli_connection,但我不断收到问题连接,我把(mysite.com,用户,通过,数据库)连接;我不知道如何使用mysqli_connection。我得到了另一个错误“无法连接”[email protected]“我有一个共享的IP,所以我想知道它是否连接到这个其他网站,在我的代码没有参考。我厌倦了使用本地主机,而不是我的网站,但没有什么作品。创建表单以将数据提交到wordpress数据库中

此代码试图得到一些数据从数据库,但什么也没发生一样,同样B4其中mysite.com显示错误不能连接到[email protected]和本地主机不工作。

<?php 
    $con=mysqli_connect("mysite.com","user","pass","db"); 
    // Check connection 
    if (mysqli_connect_errno()) { 
     echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

    $result = mysqli_query($con,"SELECT * FROM Liquor_Type"); 

    while($row = mysqli_fetch_array($result)) { 
     echo $row['lq_name'] . " " . $row['description']; 
     echo "<br>"; 
    } 

    mysqli_close($con); 
    ?> 

我的表格

<form action = "setLQType.php" method="post"> 
Add a New Liquor Type</br></br> 
<p>Name: <input type="text" name="name"/></p> 
<p>Description <input type="text" name="description"/></p> 
---------------------------------------------- 
<input type="submit" name="Submit"/> 
</form> 
</br> 

setLQType php文件,这是主要的wordpress字典。它会到达文件,但什么都不做。

<?php 
$con=mysqli_connect("mysite.com","user","pass","db_name"); 
// Check connection 
if (mysqli_connect_errno()) { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 
$name = mysqli_real_escape_string($con, $_POST['name']); 
$description = mysqli_real_escape_string($con, $_POST['description']); 

$sql="INSERT INTO Liquor_Type(lq_name, description) 
VALUES ('$name ', '$description)"; 

if (!mysqli_query($con,$sql)) { 
    die('Error: ' . mysqli_error($con)); 
} 
echo "1 record added"; 

mysqli_close($con); 
?> 

更新插入页... setLiquorType.php在website.com/setLiquorType.php

<?php 
$global $wpdb; 
$name = $_POST['name']; 
$description = $_POST['description']; 
$table_name = $wpdb->prefix . "wp_Liquor_Type"; 
$wpdb->insert($table_name, array(
          'lq_name' => $name, 
          'description' => $description 
          )); 
?> 
+1

你将会拥有给一些代码示例 – 2014-10-17 19:19:05

+0

添加了一些代码 – Matthew 2014-10-17 19:25:34

+0

当你尝试这样做时,具体是什么错误?你能添加堆栈跟踪吗? – mmcrae 2014-10-17 19:28:45

回答

0

发帖是这样工作的:

global $wpdb; 

$name = sanitize_text_field( $_POST['name']); 
$lq_name = sanitize_text_field($_POST['lq_name']); 
$description = $_POST['description']; 
$table_name = $wpdb->prefix . "Liquor_Type"; 
$wpdb->insert($table_name, array(
    'liquor_name' => $liquor_name, 
    'description' => $description 
)); 

你的MySQL连接可用在var $ wpdb

global $wpdb; 

        $sql="SELECT * FROM Liquor_Type"; 

        $row = $wpdb->get_results($sql);     
        foreach ($row as $data) 
        { 
        echo $data->lq_name. " " . $data->description; 
         echo "<br>"; 
        } 
+0

真棒,作品谢谢,但我怎么可以采取表格数据,并将其发送到数据库? – Matthew 2014-10-17 19:49:36

+0

将wordpress发送到一个PHP文件,或者我必须有在PHP页面的PHP? – Matthew 2014-10-17 19:59:01

+0

我仍然有问题,我已经厌倦了你的插入方法,并且我在过去写过类似的东西,并且仍然无法获得任何输入到db的东西。 – Matthew 2014-10-17 20:50:22