Php 为什么请求结果不同?
请帮助新手。我的头断了。 我在phpmyadmin中发出了mysql请求:Php 为什么请求结果不同?,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,请帮助新手。我的头断了。 我在phpmyadmin中发出了mysql请求: SELECT user_id FROM wp_usermeta WHERE meta_key = 'player' AND meta_value = 'yes' 得到 user_id 1 30 28 22 26 12 stdClass Object ( [user_id] => 108 ) stdClass Object ( [user_id] => 60 ) stdClass Object
SELECT user_id FROM wp_usermeta WHERE meta_key = 'player' AND meta_value = 'yes'
得到
user_id
1
30
28
22
26
12
stdClass Object ( [user_id] => 108 ) stdClass Object ( [user_id] => 60 ) stdClass Object ( [user_id] => 48 ) stdClass Object ( [user_id] => 51 ) stdClass Object ( [user_id] => 7 ) stdClass Object ( [user_id] => 101 )
这是正确的结果。我运行PHP脚本:
<?php
require 'connect.php';
$sql_planet="SELECT user_id FROM wp_usermeta WHERE meta_key = 'player' AND meta_value = 'yes'";
$result_planet = mysql_query($sql_planet);
while ($row_planet = mysql_fetch_object($result_planet)) {
print_r($row_planet);
}
?>
怎么了?我已经用mysqli重新编写了你的脚本:
$conn = mysqli_connect("your_server","your_user","your_pw","your_db");
if(!$conn) {
die("Connection failed: ".mysqli_connect_error());
}
$sql_planet="SELECT user_id FROM wp_usermeta WHERE meta_key = 'player' AND meta_value = 'yes'";
$result = mysqli_query($conn, $sql_planet);
while($row = mysqli_fetch_assoc($result)) {
echo "Id of user: ".row['user_id'];
}
mysqli_close($conn);
因为您使用的是mysql\u fetch\u object(),它将结果作为对象返回,所以如果您想获取关联的数组,请使用mysql\u fetch\u assoc()。停止使用去擦洗的
mysql.*
API。使用mysqli.*
或PDO
I尝试关联,但这两个结果又不同了。您希望得到什么结果?如果您指的是用户id集,那么可能您正在连接到两个不同的mysql服务器/dbI。我希望php脚本中的“用户id”与phpmyadmin的第一个请求中的“用户id”相同。我连接到同一个数据库。谢谢,我将使用mysqli_