Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在mysql中从单个字段检索数据?_Php_Mysql - Fatal编程技术网

Php 如何在mysql中从单个字段检索数据?

Php 如何在mysql中从单个字段检索数据?,php,mysql,Php,Mysql,我正在尝试使用$keyword从MySql中的表中检索电子邮件地址。关键字可以是问题字段中的任何内容,以标识行。我通过下面的查询成功地找到了我需要的行,但它返回了整行,如何从行中提取电子邮件并将其存储为$email 查询: 表: |询问| id |商店| fname | lname |电子邮件|电话|城市|州|邮政编码|问题| sku |日期| 改用上面的代码。从…中选择*。。。在mysql语句中,这意味着选择所有内容。只需选择需要电子邮件的列,而不是全部* 请注意,mysql_*函数已弃用,最

我正在尝试使用$keyword从MySql中的表中检索电子邮件地址。关键字可以是问题字段中的任何内容,以标识行。我通过下面的查询成功地找到了我需要的行,但它返回了整行,如何从行中提取电子邮件并将其存储为$email

查询:

表:

|询问| id |商店| fname | lname |电子邮件|电话|城市|州|邮政编码|问题| sku |日期|


改用上面的代码。从…中选择*。。。在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);
}