如何从传入的网址获取ID值?

时间:2019-06-06 08:06:03

标签: php mysql

用户使用此链接www.sitename.com/index.php?userid=1

但是用户不需要登录。

我想为数据库中ID = 1用户更改一些值。我如何改变价值。当用户刚刚访问此网址时?

这是我的index.php代码:(包括有关qr代码的其他一些代码)

<?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());
}

1 个答案:

答案 0 :(得分:1)

可以直接通过GET方法访问或检索从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']