【问题标题】:PHP email suffix using CONCAT()使用 CONCAT() 的 PHP 电子邮件后缀
【发布时间】:2012-04-20 09:04:00
【问题描述】:

尝试使用 php 生成使用 ID 的电子邮件地址,例如:使用 people_mysql 的查询功能从数据库中的 peopleID 到包含来自五个人的电子邮件数组的 HTML 表中。数据库没有电子邮件地址,只有字段中的 peopleID。电子邮件后缀是@dot.com。

为了更好地解释我在说什么。

$peopleid = "12345";
$suffix = "@dot.com";
$email = $peopleid . $suffix;
// where $email then contains "people@dot.com" with MySQL

这就是我想出的字符串运算符。

mysql> SELECT * FROM 'people';
mysql> SELECT *, CONCAT('peopleID', '@dot.com') AS 'Email' FROM 'people';

如果有人能提供 php 代码,我将不胜感激。

【问题讨论】:

  • 哼,我想帮忙,但老实说我不明白你在问什么:(
  • 好的,你的 PHP 工作了……到底是什么问题?
  • 好的。我有一个人的员工编号是 12345,在数据库中您会看到 peopleID 12345。数据库中没有电子邮件地址。为了从数据库查询到带有电子邮件地址列表的 html 页面,例如 12345@dot.com。使用 peopleID 数组同时返回的列表中最多会有十个人。
  • minitech:好的,我看到它有效,我如何将来自所有 peopleID 的电子邮件地址数组合并到数据库中。

标签: php mysql concat


【解决方案1】:

您的查询有误。查看@符号之前的字符。应该是单引号。

$emails = array();
$query = "SELECT *, CONCAT('peopleID', '@dot.com') AS 'Email' FROM 'people'";
$result = mysql_query($query,$conn_to_database);

while($row = mysql_fetch_object($result)):
    $emails[] = $row->Email;
endwhile;

MySQL 查询返回对结果的引用,而不是结果本身。因此,您需要获取每一行并执行您需要执行的任何操作。在这种情况下,您正在填充一个名为 $emails 的数组,然后您可以在您的 php 代码中使用它。

【讨论】:

  • 相反,它是唯一的单引号; 其余的不正确。
  • @符号前面的字符
  • 这会将结果显示为电子邮件数组吗?还是我需要数据库中的任何内容?
  • 不,您需要遍历结果(通常使用 while 语句)并从结果中填充一个数组
  • 你能澄清一下吗?我不确定我是否理解。如果是这样,你能举个例子“从结果中填充一个数组”吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-12-23
  • 2011-12-01
  • 2011-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-07
相关资源
最近更新 更多