我在编程方面没有经验,但我有一个问题,就是使用HTML格式'method = POST'从PHP获取数据。
我的目标是使用HTML表单从数据库收到一封电子邮件并以数字形式显示,例如,在数据库中找到了多少指定的电子邮件地址`(以html格式 - )。 我想在html / php页面中显示来自DB的电子邮件记录,作为数字,例如5,24,82等。
到目前为止,我已经这样做了: 我使用了DB命令代码
SELECT email, COUNT( email ) Total
FROM table_name
GROUP BY email
HAVING Total >1;
输出结果如下:
email Total
app@gmail.com 7
yoyo@gmail.com 13
yoyoaa@gmail.com 3
yoyoadade@gmail.com 3
yoyoaga3@gmail.com 3
yoyoas@gmail.com 3
yoyoassdf@gmail.com 3
3,7和13是输出结果,其中包含在数据库中找到的重复电子邮件地址。
这是我到目前为止所做的PHP代码,它不起作用,它没有给我我想要的结果:
$link = mysqli_connect("db_host", "db_username", "password", "db_name");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$sql = "SELECT email, COUNT( email ) Total\n"
. "FROM table_name\n"
. "GROUP BY email\n"
. "HAVING Total >1";
if(mysqli_query($link, $sql)){
echo "Found: $row['email']; ',' email addresses in the database.";
} else {
echo "Email address have no records in database.";
}
mysqli_close($link);
..和表单代码我用于POST方法从数据库中获取指定的电子邮件地址计数:
<form action='?getdata' method='post'>Enter email: <input type='text' name='email' id='email'><br><input type='submit' name='submit' value=' Check records '></form>
希望尽快解决这个问题。我在互联网上搜索了人们有同样的问题,但没有找到确切的结果。
感谢您的帮助。
谢谢, 莱德:)
答案 0 :(得分:0)
@Matt Jacob是对的。您需要遍历结果才能将其打印出来。
$sql = "SELECT email, COUNT( email ) Total\n"
. "FROM table_name\n"
. "GROUP BY email\n"
. "HAVING Total >1";
$raw_results = mysqli_query($link, $sql);
while ($row = mysql_fetch_array($raw_results)){
// sorry I don't know msqli just yet(on my list)
// Use the mysqli equivelant for fetch_array
$email = $row['email'];
$count = $row['count( email )'];
print "$email has $count occurences<br />\n";
}