2014-12-06 60 views
-3

我有一个表名称管理器,我有两个字段manager_id,manager_name。我试图从manager_name获取manager_id。但它没有显示任何结果和错误。PHP:如何从名称获得ID

这是我的代码。

<?php 
    $jdata = $_GET['js']; 
    $result = json_decode($jdata,true); 
    $name=$result['mname']; 
    $conn=mysqli_connect('localhost','root','root','projmanagement'); 
    $mid = mysqli_query($conn, "SELECT manager_id FROM manager WHERE manager_name=".$name); 
    echo $mid; 
?> 

如果我打印$ name,我就会获得价值。但我无法获得$ mid的价值。

+0

尝试'var_dump' $ mid查看从查询中得到的结果! – pbaldauf 2014-12-06 13:09:58

+0

@pbaldauf是的,它是这样展示的。 object(mysqli_result)#2(5){[“current_field”] => int(0)[“field_count”] => int(1)[“length”] => NULL [“num_rows”] => int(1) )[“type”] => int(0)} – user3764346 2014-12-06 13:11:35

回答

0

试试这个,(名字是一个字符串,因此将其放在一个 “'” 引号)

mysqli_query($conn, "SELECT manager_id FROM manager WHERE manager_name='$name'"); 

编辑2 [调试]:试试这个,看看如果MySQL连接

$conn=mysqli_connect('localhost','root','root','projmanagement') or die('Error'); 
+0

我得到500内部服务器错误 – user3764346 2014-12-06 13:14:37

1

mysqli_query返回布尔值(TrueFalse)所以这是正常的PHP行为。

php > a = False 
php > print a 
php > 

您应该更新您的查询。单引号应该用于字符串值。

$mid = mysqli_query($conn, 
    "SELECT manager_id FROM manager WHERE manager_name='".$name."'"); 
+0

Oztas我得到500内部服务器错误 – user3764346 2014-12-06 13:14:17

+0

@ user3764346您可以检查错误日志 – 2014-12-06 13:17:58