2014-01-14 41 views
0
<?php 

{ 
session_start(); 
include "dbconnect.php"; 

$email = $_SESSION['email']; 
echo $email; 
$query = "SELECT uid FROM master WHERE emailid = '$email' "; 
$result = mysql_query($query); 
$row=mysql_fetch_array($result); 
while($row) 
{ 
    $uid=$row[1]; 

    echo $uid; 

    } 

} 这个code.it是什么错,它给出的电子邮件,但无法使用会话变量电子邮件检索uid。 请帮忙使用会话变量从数据库检索数据

+0

什么是流浪''{为? –

回答

0

我不知道你为什么在代码开始时有{,你应该删除它。而第二件事,删除echo $email;你应该有工作代码

+0

什么?为什么要删除'echo'? –

+0

你可以使用评论部分 –

3
while($row) { 
    $uid = $row[1]; 
    echo $uid; 
} 

应该

while($row) { 
    $uid=$row['uid']; 
    echo $uid;  
} 

尝试,如果此代码对你的作品

session_start(); 
include "dbconnect.php"; 

$email = $_SESSION['email']; 
//echo $email; 
$query = "SELECT uid FROM master WHERE emailid = '$email' "; 
$result = mysql_query($query); 

while($row=mysql_fetch_array($result)){ 
    $uid=$row['uid']; 
    echo $uid; 
} 
+0

9edge仍然不工作的人 –

+0

如果这不起作用,请检查您的查询是否返回任何数据。 – 9edge

0

试$的uid = $行[0 ]而不是$ uid = $ row [1]; 因为$ row是一个数组.Array总是开始它的计数器形式0. 这里您已经定义了$ uid = $ row [1],这意味着它将显示结果集第二行的结果..但是没有第二个行只有一行是“uid”,所以尝试$ uid = $ row [0]而不是$ uid = $ row [1];

0

试试这个:

<?php 
session_start(); 
include "dbconnect.php"; 

$email = $_SESSION['email']; 

$query = "SELECT uid FROM master WHERE emailid = '".$email."'"; 
$result = mysql_query($query); 
if(mysql_num_rows($result)>0) 
{ 
    $row = mysql_fetch_array($result); 
    $uid = $row["uid"]; 
    echo $uid; 
} 
else 
{ 
    echo "No record found"; 
} 
?> 
+0

谢谢你的代码,但它给o/p找不到记录,同时正在添加记录 –

+0

检查数据库连接,然后尝试执行查询(echo代码中的查询并在phpmyadmin中执行它) –