如何在PHP MySQLi中选择多列
我创建了一个表messages,其中包含列user\u id、message\u sender、message\u receiver、message\u receiver\u id 查询结果如下所示 第1行:2 abol Alang 3 第2行:2 abol mak 4 第3行:3 alang abol 2 第4行:3阿兰麦4 我想显示包含Alang记录的所有查询,即第1,3,4行。我只能显示第3,4行,但无法显示第1行。这是密码如何在PHP MySQLi中选择多列,php,mysql,mysqli,Php,Mysql,Mysqli,我创建了一个表messages,其中包含列user\u id、message\u sender、message\u receiver、message\u receiver\u id 查询结果如下所示 第1行:2 abol Alang 3 第2行:2 abol mak 4 第3行:3 alang abol 2 第4行:3阿兰麦4 我想显示包含Alang记录的所有查询,即第1,3,4行。我只能显示第3,4行,但无法显示第1行。这是密码 <?php include("includes/c
<?php
include("includes/connections.php");
function displaymessagesprofile(){
global $connect;
global $user_id;
$get_id = $_GET['message_receiver_id'];
$sql_message = "SELECT * FROM messages WHERE user_id='$user_id' OR message_receiver_id='$get_id'";
$get_message = mysqli_query($connect, $sql_message);
if($get_message && mysqli_num_rows($get_message) > 0 ){
while($row_message = mysqli_fetch_array($get_message)){
$user_id = $row_message['user_id'];
$message_sender = $row_message['message_sender'];
$message_receiver = $row_message['message_receiver'];
$message_receiver_id= $row_message['message_receiver_id'];
//to display message sent and received by the user logged in
echo "<div id='message_wrap'>
<p>$message_sender</p>
<p>$message_receiver</p>
<p>$message_receiver_id</p>
</div>
";
}
mysqli_free_result($get_message);
}
else{
echo "No message yet";
}
}
?>
您可能需要使用过滤器
您可能需要使用filter\u var您确定URL中有message\u receiver\u id
变量吗?是的。当然未定义的索引。我不知道为什么行$get\u id=$\u get['message\u receiver\u id';发布调用您发布的代码的代码。URL是什么样子的?(如果愿意,您可以删除域)只是想确保正确调用它。您确定URL中有message\u receiver\u id
变量吗?是的。当然未定义的索引。我不知道为什么行$get\u id=$\u get['message\u receiver\u id';发布调用您发布的代码的代码。URL是什么样子的?(如果愿意,可以删除该域)只需确保正确调用该域。错误已消失。但是$get_id仍然没有显示在结果中。记住要消毒,最基本的方法是过滤。但是$get_id仍然没有显示在结果中。记住要消毒,最基本的方法是filter_var
$get_id = $_GET['message_receiver_id'];
change to
$get_id = isset($_REQUEST['message_receiver_id']) ? $_REQUEST['message_receiver_id'] : '';