php - 如何从传入的 url 中获取 Id 值?
问题描述
当用户访问此链接时www.sitename.com/index.php?userid=1
但用户不需要登录。
我想为数据库中的 ID =1 用户更改一些值。我怎样才能改变价值。当用户刚来这个url地址?
这是我的 index.php 代码:(包括一些关于二维码的其他代码)
<?php
require "header.php";
require_once 'phpqrcode/qrlib.php';
$path='img/';
$file = $path.uniqid().".png";
?>
<?php
echo 'Current PHP version: ' . phpversion();
?>
<main>
<div class="wrapper-main">
<section class="section-default">
<?php
if (!isset($_SESSION['userID'])) {
echo '<p class="login-status">You are logged out!</p>';
}
else if (isset($_SESSION['userID'])) {
$text="http://sitename.com/project/userid{$_SESSION["userID"]}";
echo '<p class="login-status">You are logged in!</p>';
QRcode::png($text,$file,'L',10,2);
echo "<center><img src='".$file."'></center> " ;
}
?>
</section>
</div>
</main>
<?php
require "footer.php";
?>
编辑 1
当我尝试这个时我失败了我的错在哪里?
<?php
if(!empty($_GET['user_idx'])){
$user_idx=$_GET['user_idx'];
require_once 'dbh.inc.php';
$sql = "UPDATE users SET balance=balance-5 WHERE user_idx='$user_idx';";
mysqli_query($conn,$sql);
}
在里面dbh.inc.php
$servername ="127.0.0.1";
$dBUsername="xx";
$dBPassword="xx";
$dBName="xx";
$conn= mysqli_connect($servername,$dBUsername,$dBPassword,$dBName);
if(!$conn){
die("Connection failed:".mysqli_connect_error());
}
解决方案
可以通过该GET
方法访问或检索直接从 URL 获取的数据
对于您的 URL www.sitename.com/index.php?userid=1
,您可以userid=1
使用代码访问该部分$_GET['userid'] // which will result into "1"
现在,如果您想更改它,您可以创建一个链接,然后将一个变量或新值传递给它:
在你的情况下:
$text="http://sitename.com/project?userid{$_SESSION["userID"]}";
//we will treat the "userid" as a variable now
//so for you to fetch it, use:
//$_GET['userid']
推荐阅读
- css - 4 列适合 1 行 @ 宽度:每列 47%
- spring - 从 JdbcTemplate 正确评估物化视图中的占位符
- xml - 如何使用 vba 或 applescript 将 PPTX 转换为 XML?
- json - Telegraf:如何从 JMS 队列(activemq)中读取消息
- javascript - 试图从孩子访问父窗口元素
- azure - Azure 数据工厂 V2 中的嵌套 forEach 活动
- android - 如何在android中更改开关按钮颜色
- xpages - 使用嵌套重复控件进行数据处理
- mysql - MySQL中等效的Oracle序列
- java - SimpleDateFormat 总是抛出 ParseException,但 Format 似乎没问题