-3

我一直在我的 mysql 数据库上运行这个查询:

select email from main where phno=1234567890

它返回这个(http://i.imgur.com/YiVQ4NN.png

所以这是我在 php 中的尝试:

$search_query="select email from main where phno = 5756407850";
$to = mysql_query($search_query);
echo "hello " . mysql_query($search_query);`

我在网络浏览器中的结果是hello Resource id #34

我怎样才能提取电子邮件部分中的内容?在这种情况下只是“HGH”字符串?

回答:

$search_query="select email from main where phno = 5756407850";
$result = mysql_query($search_query);
$array = mysql_fetch_array($result);
$to = $array[0];
echo "hello " . $to;
4

3 回答 3

1

$to 将只包含查询中的结果集对象。

您应该使用 mysql_fetch_array 将其拆分为一个数组并使用第 0 个元素,或者使用 mysql_result 命令从 $to 中提取第 0 个元素

这些细节在这里: http: //php.net/manual/en/function.mysql-result.php

但是,这种方法已被弃用......您应该按照文档的建议查看 PDO。

于 2013-04-19T01:00:18.983 回答
0
$search_query="select email from main where phno = 5756407850";
$to = mysql_query($search_query);
echo "hello " . mysql_query($search_query);`

您已经将此 mysql_query($search_query) 分配给变量 $to 为什么不使用它,并且您不能直接回显结果,您已经遍历了必须使用 fetch_assoc 或 fetch_array 的结果,顺便说一句,欢迎新成员。

于 2013-04-19T01:02:26.420 回答
0
<?php
$search_query = mysql_query("SELECT email FROM main WHERE phno='5756407850'");

//do simple count check in your database
$count = mysql_num_rows($search_query); 
//if the count is greater than 0; if there is a match
if($count > 0){
while($row = mysql_fetch_array($search_query)){
$to = $row["phno"];/*this here will grab the number in a variable*/


}//end while statement
}//end if statement


//will echo the variable that has the number in it onto the php page
echo $to; 
?>

试试上面的代码,对不起,我发现你的问题有点难以理解/与我所做的不同,但这应该对你有用。

通常,当人们想使用 php 从数据库中获取某人的详细信息时,他们会首先进行查询,在单独的页面上列出该数据库的所有条目以供用户选择,然后他们将在下一页进行此查询

("SELECT * FROM db_table WHERE selected_id='$selected_id'); 

然后从该表中获取所有数据并将它们放入 php 变量中,然后将其回显

如果我没有多大意义,那么无论如何我强烈推荐http://shop.oreilly.com/product/9780596006303.do因为它确实以非常容易理解的方式教授 php 和 mysql

于 2013-04-19T02:06:13.757 回答