Php 如何在mysql中从单个字段检索数据?
我正在尝试使用$keyword从MySql中的表中检索电子邮件地址。关键字可以是问题字段中的任何内容,以标识行。我通过下面的查询成功地找到了我需要的行,但它返回了整行,如何从行中提取电子邮件并将其存储为$email 查询: 表: |询问| id |商店| fname | lname |电子邮件|电话|城市|州|邮政编码|问题| sku |日期|Php 如何在mysql中从单个字段检索数据?,php,mysql,Php,Mysql,我正在尝试使用$keyword从MySql中的表中检索电子邮件地址。关键字可以是问题字段中的任何内容,以标识行。我通过下面的查询成功地找到了我需要的行,但它返回了整行,如何从行中提取电子邮件并将其存储为$email 查询: 表: |询问| id |商店| fname | lname |电子邮件|电话|城市|州|邮政编码|问题| sku |日期| 改用上面的代码。从…中选择*。。。在mysql语句中,这意味着选择所有内容。只需选择需要电子邮件的列,而不是全部* 请注意,mysql_*函数已弃用,最
改用上面的代码。从…中选择*。。。在mysql语句中,这意味着选择所有内容。只需选择需要电子邮件的列,而不是全部*
请注意,mysql_*函数已弃用,最好切换到或。因此,您将能够使用预先准备好的语句,避免mysql注入的任何风险,在这里了解更多信息首先,强制mysql命令已被弃用,不要使用它们,小猫会死,你的狗会被射杀等。有关更多信息,请参阅 如果您只想从MySQL数据库中检索一列,可以在选择后指定列,而不是星号。因此,您将有一个查询,如下所示:
SELECT email FROM ask WHERE date = '$keyword' order by ask_id
您可以在PHP代码中使用以下方法:
$result = mysql_query("SELECT email FROM ask WHERE date = '$keyword' order by ask_id")
or die(mysql_error());
while($row = mysql_fetch_assoc($result)) {
var_dump($row);
}
重申一下,您不应该使用mysql_*函数。如上面提到的问题所述,有高级替代品可用。$result=mysql\u querySELECT columnName as email FROM ask WHERE date='$关键词。”按ask_id订购; 而$row=mysql\u fetch\u assoc$result{ $row['email'];//在这里,您可以使用电子邮件做任何事情。。。
}我已经尝试过这个方法,我会回显结果,看看我得到了什么,如Resources 4所示。@ScottMorrison然后您需要进一步阅读如何从PHP使用MySQL。一个好的开始是我尝试了这个,当我回显它以查看我得到了什么时,它说的是资源4而不是电子邮件,如果有进一步的步骤我需要采取$email=$result;echo$email$email=$result;echo$电子邮件@Scott首先尝试获取一个数组,然后回显它$row=mysql\u fetch\u array$result;echo$row['email'];让我们尝试一下,得到了这个错误:警告:mysql_fetch_assoc期望参数1是resource,布尔值在/var/www/html/ask/admin_search/functions_search.php中给出20@ScottMorrisonAS将数据分配给MySQL返回集中的电子邮件列。在您的示例中不需要它,因为它只是重命名列。您的问题似乎是将MySQL结果中的数据获取到PHP变量中。我建议你挑选一些关于你打算使用的技术的文档并阅读。谢谢你,我一直在阅读这篇文章,非常好,但我今天有一件非常具体的事情要完成。我对这件事很在行。谢谢大家的帮助。@ScottMorrison好吧,祝你们阅读好运:请看我针对你们具体案例的最新答案。
$result = mysql_query("SELECT email FROM ask WHERE date = '$keyword' order by ask_id")
SELECT email FROM ask WHERE date = '$keyword' order by ask_id
$result = mysql_query("SELECT email FROM ask WHERE date = '$keyword' order by ask_id")
or die(mysql_error());
while($row = mysql_fetch_assoc($result)) {
var_dump($row);
}