如何从网址中删除多余的 % 和数字


How can I remove extra % and digit from url?

我想在下一页网址中获取id。但是有很多带有 id 的%和数字。 示例:我的 id 应该在 url 之后为 13。但它变成了http://localhost/daudkandi/photo_upload.php?id=%27%20.%2013%20.%20%27

如何删除 % 和多余的数字?

这是我的总代码

<?php @session_start(); ?>
<?php include "db.php";
$union=$_POST["union"];
$mouja=$_POST["mouja"];
$khatian=$_POST["khatian"];
$extra=$_POST["extra"];
$creator=$_SESSION["email"];
$c_date=(time());
$table="form";


mysql_query("INSERT INTO $table(`id`, `union`, `mouja`, `khatian`, `extra`, `creator`, `c_date`) 
            VALUES(NULL,'$union','$mouja','$khatian','$extra', '$creator', '$c_date')") or die(mysql_error());
                        $id = mysql_insert_id();
                        $sql="SELECT * FROM $table WHERE id='$id' AND creator='$creator'";                      
                        $result=mysql_query($sql);
                        $row = mysql_fetch_array($result);
    header("Location: photo_upload.php?id=' . $row[0] . '");
?>

你做的字符串连接错误。您的最终字符串看起来像 Location: photo_upload.php?id=' . 13 . ' .使用以下代码之一连接字符串:

header("Location: photo_upload.php?id=".$row[0]);
header("Location: photo_upload.php?id={$row[0]}");
header('Location: photo_upload.php?id='.$row[0]);

header("Location: photo_upload.php?id=' .$row[0] .''");
在 $row[0] 周围有额外的空格和点,这些空格和点被编码为 %27%20.%2013%20
.%20%27
修剪多余的点和空格以获得 photo_upload.php?id=13

你可以通过以下方式修复它:

header("Location: photo_upload.php?id=".$row[0]);

在你得到你的ID的地方,只需使用urldecode($_GET['id']);将其删除。