0

我想知道是否有人可以帮助我。我正在尝试将一些数据添加到 wordpress 数据库中的表中。我正在使用 $wpdb 类,每次运行代码时,我得到的验证都会返回正面。但是当我检查数据库中的表时,它是空的。

我的代码:

    // Define global $wpdb
    global $wpdb;

    // Retrieve information from the form
    $location = $_POST['txtLocation'];
    $price = $_POST['txtPrice'];
    $type = $_POST['sltType'];
    $revenue = $_POST['txtRevenue'];
    $surgeries = $_POST['txtSurgeries'];
    $tenure = $_POST['sltTenure'];
    $upload = $_POST['txtUpload'];

    // SQL statement to insert information from the form into the database
    $sql = $wpdb->prepare("INSERT INTO practices ('Location', 'Price', 'Type', 'Revenue', 'No. of Surgeries', 'Tenure', 'PDF') VALUES (%s,%s,%s,%s,%s,%s,%s", $location, $price, $type, $revenue, $surgeries, $tenure, $upload);

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

    if (!result) {
        echo '<p class="sql-error">There was a problem uploading the practice to the database</p>';
    } else {
        echo '<p class="sql-success">The practice was uploaded to the database</p>';
    }

    echo $wpdb->last_query;

有人知道我的代码为什么会这样吗???

谢谢

4

2 回答 2

0

除了按照VALUES建议关闭查询中的语句之外,您可能会发现引用列名 using'也会给您带来问题。

MySQL 期望列标识符使用反引号括起来:`。

于 2013-10-17T10:55:54.370 回答
0

忘记)在您的查询中结束。这里

VALUES (%s,%s,%s,%s,%s,%s,%s 
                            ^

尝试:

 $sql = $wpdb->prepare("INSERT INTO practices ('Location', 'Price', 'Type', 'Revenue', 'No. of Surgeries', 'Tenure', 'PDF') VALUES (%s,%s,%s,%s,%s,%s,%s)", $location, $price, $type, $revenue, $surgeries, $tenure, $upload);

它也是

if (!$result) {
     ^
于 2013-10-17T10:48:36.160 回答