-1

我正在使用单个用户的 KID 号在我的数据库中添加某种类型的长文本(MSG1),拼写为 K-ID,它是在注册和输入数据库时​​唯一生成并分配给用户的。我有messages.php 文件,其中包含一些工作正常的验证。我在同一张表中有超过3 个选择和添加到数据库中。它没有选择字段,也没有插入新的行条目。我编写了如下代码。我想选择 MSG1 WHERE KID 等于 KID。& 添加新的 EMAIL,FNAME,LNAME,KID 以注册到数据库 & MSG1,2,3,4 之后将添加。

我的表CHAT:-

EMAIL
FNAME
LNAME
KID
MSG1
MSG2
MSG3
MSG4

我的messages.php 文件:

mysql_connect("host","user","password","database"); 
$query="SELECT FNAME,LNAME,KID FROM `CHAT` WHERE KID='$KIDA'";
mysql_real_escape_string($KIDA);     
while($row=mysql_fetch_assoc($query))
{ 
  $rows[1]=$row;
}
if($query)  
 if(!(empty($rows[1][MSG1]))) 
 { 
   echo     'Message From ';
   echo "<a><b>";
   echo $rows[1][FNAME]; echo " ";
   echo $rows[1][LNAME];
   echo "</  a></b>"; 
   echo   "<b>Message Recieved from  KID Number:- </b>"; 
   echo $rows[1][KID];


}
 mysql_connect("host","user","password","database"); 

 $SAS="SELECT MSG1 FROM `CHAT` WHERE KID='$KID'";
 mysql_real_escape_string($KID); 
 while($row=mysql_fetch_assoc($SAS))
 { 
   $rows[1]=$row;
 }
if($SAS) 
{
  echo"<br><b>";
  echo  $rows[1][MSG1]; 
  echo "</ b><br>"; 
  echo "<b>Your KID Number is</b> ".'$KID';   
} 
else 
{ 
  die('No messages');
}
?>

这里 $KID 是第一个用户登录的 KID 号码,而 $KIDA 是第二个用户的 KID 号码,第二个用户向第一个用户发送了带有他的 KID 号码的消息。我的最终错误:- 1) 我收到 php 错误:- mysql_fetch_assoc(): 提供的参数不是有效的 MySQL 结果资源。2) 没有从数据库中添加或选择。3)我有多个数据库操作,如何使它更容易/简单

你的建议会帮助我,学习新的东西。谢谢你的帮助。

4

2 回答 2

1

我希望它会帮助你

<?php
$connect = mysql_connect("host","user","password");
mysql_select_db("database",$connect);

$query="SELECT FNAME, LNAME, KID FROM CHAT WHERE KID='$KIDA'";
$result = mysql_query($query);     
if($row=mysql_fetch_array($result))
{ 
    echo     'Message From ';
    echo "<a><b>";
    echo $row["FNAME"]; echo " ";
    echo $row["LNAME"];
    echo "</  a></b>"; 
    echo   "<b>Message Recieved from  KID Number:- </b>"; 
    echo $row["KID"];
}

$SAS="SELECT MSG1 FROM `CHAT` WHERE KID='$KID'";
$result = mysql_query($SAS); 
$numRows = mysql_num_rows($result);
if($numRows>0) {
   while($row=mysql_fetch_array($result))
   { 
      echo"<br><b>";
      echo  $row["MSG1"]; 
      echo "</ b><br>"; 
      echo "<b>Your KID Number is</b> ".'$KID'; 
   }
} else {
  echo "no message"; 
}
?>
于 2013-09-01T16:29:26.657 回答
0

我认为这应该有效。

// Firstly, sanitise the input.
// This is a lot easier in PDO or mysqli_*
$KID = mysql_real_escape_string($KID); 

$SAS="SELECT MSG1 FROM `CHAT` WHERE KID='$KID'";

// run the query, or generate an error message
$rowset = mysql_query($SAS) or die(mysql_error());

// Check to see if there's an entry in the database
if ($row = mysql_fetch_assoc($rowset)) {
    echo"<br><b>";
    echo  $row['MSG1']; 
    echo "</b><br>"; 
    echo "<b>Your KID Number is</b> ".'$KID';   
} else { 
    die('No messages');
}
于 2013-09-01T16:24:27.923 回答