2014-10-17 219 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