Php 如何解决标记URL的回显问题
如何解决URL 我用echo呼叫a标签。它运行得很好,但是URL包含一些我不知道如何解决的问题?谁能给我解释一下吗?为什么没有URL会有这些内容%20%20% 这是我回显的URLPhp 如何解决标记URL的回显问题,php,Php,如何解决URL 我用echo呼叫a标签。它运行得很好,但是URL包含一些我不知道如何解决的问题?谁能给我解释一下吗?为什么没有URL会有这些内容%20%20% 这是我回显的URL http://localhost/pme/main/directMessageRoom.php?directMessageRoomID=1></a>%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2
http://localhost/pme/main/directMessageRoom.php?directMessageRoomID=1></a>%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cform%20method=
http://localhost/pme/main/directMessageRoom.php?directMessageRoomID=1>%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3形式20%20方法=
这是我的密码
<div class ="direct-message-btn-container ">
<?php
include '../config.php';
if(isset($_SESSION['id'])){
$target = $_GET['user'];
$id = $_SESSION['id'];
$targetusername = mysqli_query($connection,"SELECT username FROM user WHERE id='$target' ")or die(mysqli_error($connection));
$username= mysqli_query($connection,"SELECT username FROM user WHERE id='$id'") or die(mysqli_error($connection));
$dm_sql="SELECT * FROM direct_message_room WHERE user_1_id ='$id' AND user_2_id='$target' OR user_1_id='$target' AND user_2_id='$id'";
$check_direct_message_room = mysqli_query($connection, $dm_sql) or die(mysqli_error($connection));
$check= mysqli_num_rows($check_direct_message_room);
if($check == 0){
$rowUserName=mysqli_fetch_array($username);
$rowTargetUserName=mysqli_fetch_array($targetusername);
$room_name=$rowUserName['username']. ' and ' . $rowTargetUserName['username'];
$direct_message_room_name ="INSERT INTO direct_message_room(`direct_message_room_name`,`user_1_id`,`user_2_id`) VALUES ('$room_name','$id','$target')";
$newDirectMessageRoom = mysqli_query($connection,$direct_message_room_name)or die(mysqli_error($connection));
$direct_message_room_id = mysqli_insert_id($connection);
echo '<a href="directMessageRoom.php?directMessageRoomID='.$direct_message_room_id.'></a>';
}
else{
while($row3 = mysqli_fetch_array($check_direct_message_room)){
echo '<a href="directMessageRoom.php?directMessageRoomID='.$row3['id'].'></a>';
}
}
?>
<form method="post" action="" role="form">
<div class="form-group ">
<input type = "submit" class="btn content-btn btn-direct-message" value="message" name="chat">
</div>
</form>
</div>
您忘记关闭
href
属性(双引号):
echo';
就在这里---^
注意表单字段中存在大量的“空白”。您的提交按钮,例如,您编写此
。您不小心插入了空白。它应该是
你所说的“包含未使用的内容”是什么意思?您没有关闭任何链接中的href属性。你也可以接受SQL注入。也许我说的不对,但我想说的是,返回的URl将有很多%20%20%20%20%20%我不知道是什么,我认为是你的浏览器试图更正损坏的href
s。但一旦我关闭它,我就无法访问URl。。。我还没来得及回显是臭虫吗?@Chew:你说的“不能进入URL”是什么意思?实际发出的HTML是什么,您在做什么,它是如何失败的?我正在做的是检查用户1和用户2是否拥有聊天室,如果否,将为用户cht插入1个新聊天室,并将它们带到directMessageRoom.php,但一旦我关闭a标记,它将不会执行任何操作,它只会保留在page@Chew字体恐怕这一切都毫无意义。你能具体说明你遇到的实际问题吗?HTML本身不“执行任何操作”。你需要具体解释你到底在做什么,以及它是如何失败的。还好我自己修复了,但无论如何谢谢你的提醒
echo '<a href="directMessageRoom.php?directMessageRoomID='.$row3['id'].'"></a>';
right here ---^