创建表单以将数据提交到wordpress数据库中
问题描述:
我一直在想出一些方法来获取我在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
));
?>
答
发帖是这样工作的:
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>";
}
你将会拥有给一些代码示例 – 2014-10-17 19:19:05
添加了一些代码 – Matthew 2014-10-17 19:25:34
当你尝试这样做时,具体是什么错误?你能添加堆栈跟踪吗? – mmcrae 2014-10-17 19:28:45