我已经建立了一个网页,可以向我工作的公司的员工发送短信。随着新员工的不断添加和删除,我希望将此应用程序与wordpress集成,无需编辑代码即可管理员工。
每个帖子都会包含用户的姓名和电话号码。该名称将作为用户联系的选项在网页上提取。提交表单时,它将转到运行if / else的php表单以查找员工,并将该员工与其电话号码匹配,如下所示:
//Who the text message is to, Establish their phone #
if($employee == 'brad'):
$text_to[] = '+15555555555';
elseif ($employee == 'mary'):
$text_to[] = '+15555555555';
elseif ($employee == 'tom'):
$text_to[] = '+15555555555';
elseif ($employee == 'bill'):
$text_to[] = '+15555555555';
elseif ($employee == 'joe'):
endif;
我希望不仅能够通过循环从wordpress中提取这些名称以显示在我的页面 上,而且还能够添加或删除新条目及其电话号码,这个php联系表单 。
我知道如何遍历wordpress帖子以显示页面上的名称。我想知道是否也可以使用此数据来修改此联系表单,如果是,则如何设置它。每当有人编辑Joe的wordpress条目时,PHP表单就会获得此更新,以便在向Joe发送消息时,它会找到他的电话号码并向他发送消息。
非常感谢任何帮助。我还应该注意到我正在使用Twilio来发送短信。
答案 0 :(得分:0)
自己试图解决一个简单的问题。很明显,你对数据库的想法不熟悉,坦率地说,你做错了。
让我们谈谈如何改进您的初始方法:
每个帖子都会包含用户的姓名和电话号码。
我们可能有一个数据库表来存储员工信息,而不是帖子。
您可以通过简单的谷歌搜索找到大量关于数据库的信息以及如何将它们与您的wordpress帐户一起使用。
我希望不仅能够通过循环从wordpress中提取这些名称以显示在我的页面上,而且还能够将新条目及其电话号码添加到此php联系表单中。
同样,如果您有一个存储员工信息的数据库,这是基本的。
例如,employees
数据库表可能包含以下列:
由于PHP
内置了与MYSQL
数据库通信的功能(很可能是WordPress已经在使用的数据库),因此您可以执行以下操作:
获取所有员工数据
SELECT * FROM employees
获取某个员工的数据
SELECT * FROM employees WHERE name = '$name'
$name
是一个可以通过WordPress表单POST
请求设置的变量
更新某个员工的数据
UPDATE employees SET phone = '+15555555555' WHERE name = '$name'
删除某个员工的数据
DELETE FROM employees WHERE id = 5
您还可以执行以下操作:
SELECT * FROM employees WHERE created_at > '3/1/2015'
将返回3/1/15
之后添加的所有员工。
答案 1 :(得分:0)
使用DMBS效果很好,但不是唯一的解决方案。
包括'users.inc'; //平面文件创建数组$ userList 这可能是复杂结构的数组(ofArrays)
[假设$ userList = array($ user => $ phone,...); ] 然后foreach($ userList as $ user => $ phone){// process($ user,$ phone); }
答案 2 :(得分:0)
所以你们所建议的一切都很有帮助。我可能没有那么清楚,我真的需要通过wordpress帖子创建/编辑/删除条目。通过执行以下操作,我能够像这样设置它:
//pull variables from html form input. Employee variables are post ID's that I will then be able to use to retrieve the post_content which contains their phone numbers
$employee1 = $_POST['employeeName1'];
$employee2 = $_POST['employeeName2'];
$employee3 = $_POST['employeeName3'];
$customMsg = $_POST["textMessage"];
//Create array from above variables and exclude any that lack post data
$employees = array($employee1, $employee2, $employee3);
$setEmployeeIDs = array();
foreach ($employees as $employee) {
if (!empty($employee)) {
$setEmployeeIDs[] = $employee;
}
}
$servername = "xxxx";
$username = "xxxx";
$password = "xxxx";
$dbname = "xxxx";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
//Get array of Phone Numbers connected to each ID and add to array
$sql = "SELECT * FROM wp_posts WHERE ID IN (".implode(',',$setEmployeeIDs).")";
$result = $conn->query($sql);
$phoneNumbers = array();
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$phoneNumbers[] = $row["post_content"] ;
}
} else {
echo "0 results";
}
$conn->close();
总而言之,我使用wordpress发布/编辑/删除该数据作为帖子,然后将从网页中选择的ID发送到php表单,然后能够从中检索电话号码使用Raphael方向的SQL数据库。