在循环中获取值,发送到另一个页面并使用该值调用catch数据


Get value in looping, send to another page and call catch data using that value

我使用session将该值发送到其他页面,但mysql语法不使用该值显示数据。它没有显示MySQL语法上的错误。有人能帮我吗?并解释为什么mysql语法不能读取会话?或者我需要为pakejlist.php页面上的会话分配新的变量?

该值已经从DB调用并显示在food.php上的A HREF链接上,我想在pakejlist.php mysql语法中获得该值。

而我所取得的一切都是徒劳的。。语法很好,但数据没有出来。

//food.php
<?php include("../kahwin/Connections/conn.php"); ?>
<!DOCTYPE html>
<html>
<head>
    <title>Kahwin Ringkas</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</head>
<body>
<nav class="navbar navbar-inverse">
  <div class="container-fluid">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>                        
      </button>
      <a class="navbar-brand" href="/kahwin/index.php">Walimatul Urus</a>
    </div>
    <div class="collapse navbar-collapse" id="myNavbar">
      <ul class="nav navbar-nav navbar-right">
        <li><a href="#"><span class="glyphicon glyphicon-log-in"></span> Login</a></li>
      </ul>
    </div>
  </div>
</nav>
<div class="container">  
<div class="page-header">
  <h1>Carian Katering</h1>
</div>
  <?php
    session_start();
    $_SESSION['id'] = $row['v_id'];
    mysql_select_db($database_conn, $conn);
    $sql = mysql_query("SELECT * FROM vendor WHERE type = 'Katering'") or die (mysql_error());
    while ($row = mysql_fetch_array($sql)) {
  ?>
    <div class="col-md-4">
      <?php echo '<img src="data:image;base64, '.$row['img'].'" class="img-thumbnail">' ?>
      <h4><?php echo $row['companyName']?></h4>
      <p><?php echo $row['address']?>, <?php echo $row['code']?> <?php echo $row['city']?>, <?php echo $row['state']?><br><?php echo $row['contact']?><br><?php echo $row['email']?><br></p>
      <a href="pakejlist.php" value="<?php echo $row['v_id']?>">View Package</a><br>
    </div>
    <?php }
    ?>
</div>
</body>
</html>

        //pakejlist.php

    <?php include("../kahwin/Connections/conn.php"); ?>
<!DOCTYPE html>
<html>
<head>
    <title>Kahwin Ringkas</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</head>
<body>
<nav class="navbar navbar-inverse">
  <div class="container-fluid">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>                        
      </button>
      <a class="navbar-brand" href="/kahwin/index.php">Walimatul Urus</a>
    </div>
    <div class="collapse navbar-collapse" id="myNavbar">
      <ul class="nav navbar-nav navbar-right">
        <li><a href="#"><span class="glyphicon glyphicon-log-in"></span> Login</a></li>
      </ul>
    </div>
  </div>
</nav>
<!-- Page Content -->
    <div class="container">
        <!-- Page Heading -->
        <div class="row">
            <div class="col-lg-12">
                <h1 class="page-header">Senarai Pakej</h1>
            </div>
        </div>
        <!-- /.row -->
        <!-- Project One -->
        <?php
            //$vid = $_REQUEST['id'];
            session_start();
            mysql_select_db($database_conn, $conn);
            $sql = mysql_query("SELECT * FROM pakej WHERE v_id = '" .$_SESSION['id']. "' ") or die (mysql_error());
            while ($result = mysql_fetch_array($sql)) {
        ?>
        <div class="row">
            <div class="col-md-6">
                <h3><?php echo $result['name_p']?></h3>
                <h4>$ <?php echo $result['harga']?></h4>
                <p><?php echo $result['descr']?></p>
                <a class="btn btn-primary" href="#">Add to cart <span class="glyphicon glyphicon-chevron-right"></span></a>
            </div>
            <div class="col-md-5"></div>
        </div>
        <?php }
        ?>
        <!-- /.row -->
        <hr>
</body>
</html>

在food.php中,您正在mysql_fetch_array循环外初始化会话变量$_session['id']=$row['v_id']。因此$row['v_id']为空。此外,如果您在循环中初始化它,它将被覆盖,并具有最后一行的值。

在环路中,

<a href="pakejlist.php" value="<?php echo $row['v_id']?>">View Package</a><br>

锚点标记中的值没有任何意义。无效。所以你可以试试这个。。

<a href="pakejlist.php?v_id=<?php echo $row['v_id']?>">View Package</a><br>

在pakejlist.php中,您将更改为

$sql = mysql_query("SELECT * FROM pakej WHERE v_id = '" .$_GET['v_id']. "' ") or die (mysql_error());

希望这能帮助。。。